Differences between revisions 8 and 12 (spanning 4 versions)
Revision 8 as of 2015-01-07 09:15:37
Size: 1906
Editor: ThomasBreuer
Comment:
Revision 12 as of 2015-01-07 09:19:52
Size: 1901
Editor: ThomasBreuer
Comment:
Deletions are marked like this. Additions are marked like this.
Line 47: Line 47:
  * subroutine ''clamsxxx_read_nml'': Einlesen der Konfiguration des Submodels
  * Submodel-HP ''xxx''
  * subroutine ''clamsxxx_read_nml'': Einlesen der Konfiguration des Submodels
   * Submodel-HP ''xxx''
Line 50: Line 50:
  * Deklaration des Submodel-Schalters ''LOGICAL :: USE_CLAMSXXX = .false.   * Deklaration des Submodel-Schalters ''LOGICAL :: USE_CLAMSXXX = .false.
Line 52: Line 53:
 * '''''clamsxxx.nml''' mit Namelists CTRL und CPL anlegen ''
 * '''''switch.nml''' Submodel-Schalter ''USE_CLAMSXXX'' hinzufuegen ''
 * '''clamsxxx.nml''' mit Namelists CTRL und CPL anlegen
 * '''switch.nml''' Submodel-Schalter ''USE_CLAMSXXX'' hinzufuegen

MESSy/CLaMS: Erstellen eines neuen CLaMS-Submodels

BML

  • keine Änderungen nötig

BMIL

  • messy_main_channel_bi.f90

    • Deklarationen zusätzlicher Dimensionen/Representationen
  • messy_main_channel_clams.inc

    • Anlegen neuer Dimensionen, Dimensionsvariablen und Representationen
  • messy_main_control_clams.f90

    • Ergänze USE und Aufruf der Submodelroutinen:

      • clamsxxx_setup (evtl.)

      • clamsxxx_initialize

      • clamsxxx_init_memory

      • clamsxxx_init_coupling

      • clamsxxx_global_start (evtl.)

      • clamsxxx_global_end

      • clamsxxx_free_memory

SMIL

  • Submodel-Interface messy_clamsxxx_si.f90 anlegen

  • Variablendeklaration (Variablen für eigene oder gekoppelte Channelobjekte)
  • Deklaration der Events für Submodel-Start und Submodel-Output
    TYPE(time_event)    :: xxxoutevent
    TYPE(io_time_event) :: io_xxxoutevent
  • Folgende Subroutines anlegen:
    • clamsxxx_setup (evtl.)

    • clamsxxx_initialize

      • clamsxxx_read_nml aufrufen

    • clamsxxx_init_memory

      • Anlegen von Channels/Channelobjekten
    • clamsxxx_init_coupling

      • Koppeln von Channelobjekten aus Channels anderer Submodule
    • clamsxxx_global_start (evtl.)

    • clamsxxx_global_end

      • Aufruf des Submodel-HP xxx

    • clamsxxx_free_memory

      • Freigeben aller im Submodel allokierten Variablen
    • evtl. weitere auf SMIL-Ebene genutzte Routinen

SMCL

  • messy_clamsxxx.f90

    • subroutine clamsxxx_read_nml: Einlesen der Konfiguration des Submodels

    • Submodel-HP xxx

  • messy_main_switch.f90

    * Deklaration des Submodel-Schalters ''LOGICAL
    USE_CLAMSXXX = .false.

Namelists

  • clamsxxx.nml mit Namelists CTRL und CPL anlegen

  • switch.nml Submodel-Schalter USE_CLAMSXXX hinzufuegen

messy/NewSubmodel (last edited 2016-08-19 08:03:45 by NicoleThomas)