Skip to content
Snippets Groups Projects
  • RIETTE Sébastien's avatar
    bdd10dd5
    Sébastien 11/01/2022 First rain_ice (new/red) merge · bdd10dd5
    RIETTE Sébastien authored
    Merge arome rain_ice with:
    - Ryad's versio: optimisation, KPROMA blocs
    - Meso-NH version: subgrid precipiation
    Arome aux:
    - mode_ll to provide get_indice_ll
    - mode_budget
    
    Known issues:
    - Bug around KPROMA blocs: results are different when used
    - precipitation fraction cannot be used as long as condensation is not merged
    - mode_ice4_sedimentation_momentum is still not plugged
    bdd10dd5
    History
    Sébastien 11/01/2022 First rain_ice (new/red) merge
    RIETTE Sébastien authored
    Merge arome rain_ice with:
    - Ryad's versio: optimisation, KPROMA blocs
    - Meso-NH version: subgrid precipiation
    Arome aux:
    - mode_ll to provide get_indice_ll
    - mode_budget
    
    Known issues:
    - Bug around KPROMA blocs: results are different when used
    - precipitation fraction cannot be used as long as condensation is not merged
    - mode_ice4_sedimentation_momentum is still not plugged
TODO 2.48 KiB
LOCEAN:
  La clé LOCEAN est dans un module spécifique à Méso-NH (MODD_DYNn).
  Une solution serait de créer un module propre à PHYEX qui contiendrait des clés de contrôle de haut niveau
  pour la physique (y en a-t-il d'autres?). Ce module serait initialisé dans Méso-NH à partir de la clé
  actuelle qui est sans doute utilisée ailleurs dans le code de Méso-NH

Dependencies:
  - définir les interfaces propres
  - créer des codes pour le driver
  - liste dans document Interfaces
  - pour AROME placés, en attendant, dans phyex/externals

Clé de compilation REPRO48 ajoutée pour permettre de reproduire le cycle 48, elle:
- contourne des corrections de bug
- modifie l'organisation de calculs
Cette clé devra être supprimée

Merge pb:
- ice4_nucleation_wrapper:
       Tableaux allocatable introduits par Philippe dans meso-nh.
       Pas introduits (pour l'instant?) dans version common.
       Ryad a fait des tests pour regarder impact des allocatable sur CPU => temps * 2
       Code à nettoyer quelque soit l'option retenue

Etape 2: array syntax -> loop
- en profiter pour supprimer args PA/PB des routines appelées depuis ice4_tendencies, comme pour nucleation
- regarder si pcompute et llcompute sont toujours tous deux nécessaires dans les mode_ice4* avec le passage en do
- si possible, modifier ice4_sedimentation_split* dans le même esprit que stat
- transformer sedimentation_split_momentum comme sedimentation_split

Pb identifiés à corriger plus tard:
- deposition devrait être déplacée dans ice4_tendencies
- non reproduction en changeant le nombre de procs
- avec les optimisations de Ryad, les tableaux 3D de precip passés à ice4_tendencies
  lorsque HSUBG_RC_RR_ACCR=='PRFR' ne sont  pas utilisables puisque les K1, K2 et K3
  sont relatifs à la boucle IMICRO et que les calculs faits en debut de routine ne
  concernent qu'une partie des points
       => à corriger
- avec découpage en KPROMA, le code ne produit plus les memes resultats
- seules les options oper ont été testées, il manque des test pour sedim_after, nmaxiter, xmrstep, xtstep, autoconv, rainfr

Répertoire arome/ext contient les codes non PHYEX qu'il faut modifier dans le pack pour qu'il puisse être compilé.
Ce répertoire devra être vidé à la fin du phasage, les modifications nécessaires ayant été fournies par ailleurs

Budgets/DDH
- Le code dans budget_DDH devra être transféré dans mode_budget
- les routines arome specifiques aux budgets sont dans mpa/micro, il faudrait les mettre ailleurs