Mise en place sur kami du modeles force Predicate
ORCA 2 degres - Glace de mer de Louvain la Neuve
On part de la version officielle du modele force ORCA2_LIM disponible
via modipsl sur les serveurs de l'IPSL.
On constitue les makefiles appropries a ce type de machine (liens dans
modeles/OPA/WORK sur les BB_make et BB_make.ldef du repertoire modeles/ORCA2_LIM/
On y active les clefs CPP suivante:
key_orca_r2
key_ice_lln
key_freesurf_cstvol
key_diaeiv
key_zdftke
key_flxqsr
key_trahdfiso
key_trahdfcoef2d
key_trahdfeiv
key_dynhdfcoef3d
key_convevd
key_temdta
key_saldta
key_saldta_monthly
key_monotasking
key_diagap
key_tradmp
key_ddmixing
On modifie les chemins d'acces pour la librairie Netcdf.
Une fois obtenu l'executable, on se procure les fichiers d'entree du
modele force. On cree le script de lancement pour vpp (s'il existe) et
on valide le resultat d'une simulation d'un mois.
Passage Force-Couple
Creation d'un Makefile dans modeles/ORCA_PREDICATE permettant de compiler
ioipsl, oasis et orca d'un seul coup.
Modification du Makefile Oasis:
Makefile de modipsl adapte aux routines de la technique de communication
SIPC et a l'ajout de nouvelles routines de la version 2.5 d'Oasis.
Modification du Makefile ORCA:
Compilation de routines de couplage SIPC: SIPC_Attach, SIPC_Init_Model,
SIPC_Read_Model et SIPC_Write_Model et definition des dependances.
Modification des clefs de compilation:
key_orca_r2
key_ice_lln
key_freesurf_cstvol
key_zdftke
key_flxqsr
key_trahdfiso
key_trahdfcoef2d
key_trahdfeiv
key_dynhdfcoef3d
key_convevd
key_temdta
key_saldta
key_saldta_monthly
key_diaznl
key_diahth
key_monotasking
key_coupled
En particulier, on a enleve la cle de surface libre key_freesurf_cstvol
car elle est incompatible avec la cle key_coupled au niveau de icelln.coupled.h
(bug signale au LODYC). On la remet une fois le bug corrige.
Ce choix de clefs impose d'utiliser de nouveaux fichiers d'entree.
Pour key_islands, on recupere le fichier islands.nc; pour les clefs de
diagnostics, bathymetry.atlantic.
Routines orca concernees et modifications apportees
a la version ORCA2_LIM offficielle du Lodyc
Le listing complet des modifications pour orca
et pour ucl
!
Les routines modifiees d'orca
et du modele de glace
(sous format tar).
Les problemes resolus:
-
Le modele couple est arrete au 13 jour de couplage par Orca. Une salinite
en mer de Ross decroit en deca de la valeur limite. Cette erreur provient
du fait que la clefs CPP key_islands a ete activee (le toit rigide a ete
choisi comme configuration de test). Mais la bathymetrie ayant change depuis
le debut de notre implementation, elle ne correspond plus au fichier islands.nc
(fonctions de courant autour des points terre). Il faut donc supprimer
la clef key_islands pour que le modele puisse recalcule les fonctions de
courant avec les bonnes limites de bathymetrie.
-
Dans ORCA (flx.coupled.clio.h), la repartion du flux non solaire se fait
selon le calcul suivant:
c Flux non solaire (descendant+montant) sur l'ocean
sciobc (ji,jj,3)
= znsoltot (ji,jj)
$
+ znsdqdt(ji,jj)
$
* (tn(ji,jj,1)+rt0-zstemp(ji,jj)
$
* tmask(ji,jj,1) * zfacflx
c Flux non solaire (descendant+montant) sur la glace
sciobc (ji,jj,4)
= znsoltot (ji,jj)
$
+ znsdqdt(ji,jj)
$
* (tn_ice(ji,jj)-zstemp(ji,jj)
$
* tmask(ji,jj,1) * zfacflx
avec
znsoltot: flux moyen provenant d'oasis (vu par Arpege au le pas
de temps de couplage precedent)
znsdqdt: dq/dt moyen provenant d'oasis (vu par Arpege au pas
de temps de couplage precedent)
tn: temperature de l'ocean au pas de temps du modele
zstemp: temperature moyenne (eau+glace) provenant d'oasis
et vu par Arpege au pas de temps de couplage precedent
tn_ice: temperature de la glace au pas de temps du modele
zstemp est la temperature moyenne calculee par ORCA deux jour auparavant,
passee a Arpege via Oasis (SOSSTSST -> SISUTESU), puis repassee a ORCA
via Oasis le jour suivant (COSSTSST -> SOTSMEAN). Deux interpolations sont
donc realisee avant qu'ORCA utilise ce champ moyen. Les valeurs sont donc
inutilement deformees par les interpolation avant leur utilisation.
Si l'on garde toujours le champ SOTSMEAN pour repartir le flux
dans Oasis lors de l'operation SUBGRID, on decide de ne plus le passer
a ORCA (AUXILARY au lieu de EXPORTED dans la namcouple). Dans ORCA, on
conserve la valeur de la temperature moyenne d'un pas de temps de couplage
a l'autre (et meme deux pas de temps de couplage plus tard) pour l'utiliser
dans le calcul decrit precedemment.
On regarde la difference
(sur le champ de flux non-solaire vu par ORCA) entre la simulation faisant
appel a cette technique et la simulation de depart (faisant transiter la
SST par Oasis).
On constate que la modification que nous avons apportee permet de se
soustraire aux erreurs d'interpolation induites par l'utilisation du champ
SOTSMEAN (pas de valeurs erronee en mer du levant, mer de Ross et pole
Nord et pas d'oscillations parasite du signal sur les oceans).
-
Vitesses horizontales excessives en Antarctique: pas de remise a zero du
champ de calving a chaque appel du modele de glace: apport d'eau douce
50 fois trop grand sur la cote antarctique.
|