#============================================================================== # fichier de DESCRIPTION sinobad1.d #Mohamed Berrada 26/02/2009 #============================================================================== #DEFVAL ---------------------------------------------DEFVAL #definition de valeur defval NPCA 15 defval NX 32 defval NY 22 defval NZ 31 defval NMAX 800 // ! maximum of iterations for the SOR solver defval TA 50 |50 | number of time steps defval TU 2 | start time step #exec disp_valdef #HAT_NAME -----------------------------------------HAT_NAME hat_name sinobad #OPTION ----------------------------------------------OPTION option O_M1QN3 | M2QN1 #option O_VARINCR #option O_GRADTEST # option O_DBG_NANF #option O_DBG_TING option O_EXTOBJ "../object/ncutil.o" option O_REAL double option o_parallel 16 #TRAJECTOIRES (DIM) -----------------------------------TRAJ traj Tcst M 0 1 traj Tsbd M TU 0 1 TA exec disp_traj space S0d M 1 Tcst #space S3d M NX NY NZ Tcst space S3d M NX NY NZ Tcst space S3dt M NX NY NZ Tsbd space S3dt_b M NX NY NZ Tsbd space Ssolsor M NX NY NMAX Tsbd exec disp_space ####################################################################################### #---------------------------------------- # choisir le vecteur du contrôle (target) #---------------------------------------- #modul pca_ta space S0d noward output NPCA target modul sshn_c space S3d inter YA1 YA2 noward output 1 |target modul ta_c space S3d noward output 1 target #modul ta_c space S3d input array NPCA output 1 modul sa_c space S3d noward output 1 |target modul ua_c space S3d noward output 1 |target modul va_c space S3d noward output 1 |target #------------- # Les modules dans l'ordre du code NEMO/OPA #------------- #boucle sur kt (NEMO/OPA) #step(kt) ---> ---> ##START_sbc (debut routine sbc) modul sbcgyre_qsr_qns space S3dt inter YA1 YA2 input 1 output 2 tempo modul sbcgyre_emp1 space S3dt inter YA1 YA2 input 0 output 1 tempo modul sbcgyre_zsumemp_zsurf space S3dt inter YA1 YA2 input 5 output 2 tempo modul sbcgyre_emp space S3dt inter YA1 YA2 input 3 output 1 tempo modul sbcgyre_emps space S3dt inter YA1 YA2 input 1 output 1 tempo modul sbcgyre_utau_vtau space S3dt inter YA1 YA2 input 0 output 2 tempo modul sbcgyre_wndm space S3dt inter YA1 YA2 input 4 output 1 tempo ##END_sbc (fin routine sbc) ##START_bn2 (debut routine bn2) (neos=2) modul bn2_rn2 space S3dt input 4 output 1 tempo ##END_bn2(fin routine bn2) ##START_zdf (n_evdm=1,nbotfr=2) #mélange vertical modul zdf_avt_avmu_avmv space S3dt input 19 output 3 tempo modul zdfmxl_hmld space S3dt inter YA1 YA2 input array NZ output 1 tempo modul zdfmxl_nmln_hmlp_hmlpt space S3dt inter YA1 YA2 input array NZ output 3 tempo ##END_zdf ##START_trasbc #température et salinté de surface modul ta_sa_trasbc space S3dt inter YA1 YA2 input 3 output 2 tempo ##END_trasbc ##START_traqsr modul ta_traqsr space S3dt input 2 output 1 tempo ##END_traqsr ##START_traadv_cen2 #advection (cen2 second order center scheme) modul zcent_hor_traadv_cen2 space S3dt input 5 output 2 tempo modul zcens_hor_traadv_cen2 space S3dt clonol zcent_hor_traadv_cen2 modul ta_hor_traadv_cen2 space S3dt input 5 output 1 tempo modul sa_hor_traadv_cen2 space S3dt input 5 output 1 tempo modul zcent_ver_traadv_cen2 space S3dt input 3 output 1 tempo modul zcens_ver_traadv_cen2 space S3dt clonol zcent_ver_traadv_cen2 modul ta_ver_traadv_cen2 space S3dt input 3 output 1 tempo modul sa_ver_traadv_cen2 space S3dt clonol ta_ver_traadv_cen2 ##END_traadv_cen2 ##START_traldf_lap #diffusion latérale (laplacian scheme) modul ztuv_traldf_lap space S3dt input 3 output 2 tempo modul zsuv_traldf_lap space S3dt clonol ztuv_traldf_lap modul ta_traldf_lap space S3dt input 5 output 1 tempo modul sa_traldf_lap space S3dt clonol ta_traldf_lap ##END_traldf_lap ##START_trazdf_imp #diffusion verticale (schema implicit) modul zwisd_trazdf_imp space S3dt input 2 output 3 tempo modul zrhs_trazdf_imp space S3dt input 2 output 1 tempo modul zrhs_sa_trazdf_imp space S3dt clonol zrhs_trazdf_imp modul zwt_trazdf_imp space S3dt input 4 output 1 tempo modul ta_de_trazdf_imp space S3dt clonol zwt_trazdf_imp modul ta space S3dt input 5 output 1 tempo modul sa_de_trazdf_imp space S3dt clonol ta_de_trazdf_imp modul sa space S3dt input 5 output 1 tempo ##END_trazdf_imp ##START_tra_nxt #tracer next : filtre asselin modul tb space S3dt input 4 output 1 tempo cout modul sb space S3dt input 4 output 1 tempo cout ##END_tra_nxt ##START_eos #equation of state, density modul rhd space S3dt input 2 output 1 tempo modul rhop space S3dt input 1 output 1 tempo ##END_eos ##START_dyn_adv_cen2 #advention modul hmf_TF_dynadv_cen2 space S3dt input 6 output 4 tempo modul zua_dhmf_dynadv_cen2 space S3dt input 4 output 1 tempo modul zva_dhmf_dynadv_cen2 space S3dt input 4 output 1 tempo modul zfuv_UW_dynadv_cen2 space S3dt input 7 output 2 tempo modul ua_dynadv_cen2 space S3dt input 3 output 1 tempo modul va_dynadv_cen2 space S3dt input 3 output 1 tempo ##END_dyn_adv_cen2 ##START_vor #vorticity enstrophy conservative scheme modul zwxyz_vor_ene space S3dt input 4 output 3 tempo modul ua_vor_ene space S3dt input 7 output 1 tempo modul va_vor_ene space S3dt input 7 output 1 tempo ##END_vor ##START_dyn_ldf #lateral diffusion modul ua_dyn_ldf_lap space S3dt input 5 output 1 tempo modul va_dyn_ldf_lap space S3dt input 5 output 1 tempo ##END_dyn_ldf ##START_dyn_hpg #hydrostratic pressure gradient modul zhpij_dyn_hpg_zco space S3dt input 8 output 2 tempo modul ua_dyn_hpg_zco space S3dt input 2 output 1 tempo modul va_dyn_hpg_zco space S3dt clonol ua_dyn_hpg_zco ##END_dyn_hpg ##START_dyn_zdf #vertical diffusion modul zwisd_ua_dynzdf_imp space S3dt input 2 output 3 tempo modul zwisd_va_dynzdf_imp space S3dt input 2 output 3 tempo modul zrhs_ua_dynzdf_imp space S3dt input 3 output 1 tempo modul zrhs_va_dynzdf_imp space S3dt input 3 output 1 tempo modul zwt_ua_dynzdf_imp space S3dt clonol zwt_trazdf_imp modul zwt_va_dynzdf_imp space S3dt clonol zwt_trazdf_imp modul ua_de_dynzdf_imp space S3dt clonol ta_de_trazdf_imp modul ua_dynzdf_imp space S3dt input 4 output 1 tempo modul va_de_dynzdf_imp space S3dt clonol ta_de_trazdf_imp modul va_dynzdf_imp space S3dt clonol ua_dynzdf_imp modul ua_norm_dynzdf space S3dt input 2 output 1 tempo modul va_norm_dynzdf space S3dt clonol ua_norm_dynzdf ##END_dyn_zdf ##START_dyn_spg #surface presure gradient modul spguv_now_dynspg space S3dt inter YA1 YA2 input 3 output 2 tempo modul ua_1_dynspg_flt space S3dt input 3 output 1 tempo modul va_1_dynspg_flt space S3dt input 3 output 1 tempo modul sum_spgu_dynspg_flt space S3dt inter YA1 YA2 input array NZ output 1 tempo modul sum_spgv_dynspg_flt space S3dt inter YA1 YA2 input array NZ output 1 tempo modul gcb_dynspg_flt space S3dt inter YA1 YA2 input 4 output 1 tempo modul gcx_dynspg_flt space S3dt inter YA1 YA2 input 2 output 1 tempo //modul solsor_dynspg_flt space S3dt inter YA1 YA2 input array 19 output 1 tempo modul solsor_gx1_x_r space Ssolsor input 8 output 2 tempo modul solsor_gx2_x_r space Ssolsor input 9 output 2 tempo modul solsor_flag space Ssolsor input 4 output 2 tempo modul gcx2 space S3dt_b inter YA1 YA2 input 1 output 1 tempo modul spguv_dynspg_flt space S3dt_b inter YA1 YA2 input 3 output 2 tempo modul ua space S3dt_b input 3 output 1 tempo modul va space S3dt_b input 3 output 1 tempo modul sshn space S3dt_b inter YA1 YA2 input 4 output 1 tempo modul sshb space S3dt_b inter YA1 YA2 input 4 output 1 tempo cout ##END_dyn_spg ##START_dyn_nxt #nxt : filtre d'asselin modul ub space S3dt_b input 4 output 1 tempo cout modul vb space S3dt_b input 4 output 1 tempo cout ##END_dyn_nxt ##START_divcur #calcul de div et de rotationnel modul hdivn space S3dt_b input 4 output 1 tempo modul rotn space S3dt_b input 4 output 1 tempo ##END_divcur ##START_wzv #vitesse vertical modul wa space S3dt_b input 2 output 1 tempo ##END_wzv ############################################################################################# #ctin ta_c 1..NPCA from pca_ta 1..NPCA 1 #---------->sbcgyre ctin sbcgyre_qsr_qns 1 from tb 1 i j 1 t-1 ctin sbcgyre_zsumemp_zsurf 1 from sbcgyre_zsumemp_zsurf 1 i-1 j t ctin sbcgyre_zsumemp_zsurf 2 from sbcgyre_zsumemp_zsurf 1 NX j-1 t ctin sbcgyre_zsumemp_zsurf 3 from sbcgyre_zsumemp_zsurf 2 i-1 j t ctin sbcgyre_zsumemp_zsurf 4 from sbcgyre_zsumemp_zsurf 2 NX j-1 t ctin sbcgyre_zsumemp_zsurf 5 from sbcgyre_emp1 1 i j t ctin sbcgyre_emp 1 from sbcgyre_emp1 1 i j t ctin sbcgyre_emp 2 from sbcgyre_zsumemp_zsurf 1 NX NY t ctin sbcgyre_emp 3 from sbcgyre_zsumemp_zsurf 2 NX NY t ctin sbcgyre_emps 1 from sbcgyre_emp 1 i j t ctin sbcgyre_wndm 1 from sbcgyre_utau_vtau 1 i-1 j t ctin sbcgyre_wndm 2 from sbcgyre_utau_vtau 2 i j-1 t ctin sbcgyre_wndm 3 from sbcgyre_utau_vtau 1 i j t ctin sbcgyre_wndm 4 from sbcgyre_utau_vtau 2 i j t #---------->bn2 ctin bn2_rn2 1 from tb 1 i j k t-1 ctin bn2_rn2 2 from tb 1 i j k-1 t-1 ctin bn2_rn2 3 from sb 1 i j k t-1 ctin bn2_rn2 4 from sb 1 i j k-1 t-1 #---------->zdf ctin zdf_avt_avmu_avmv 1 from bn2_rn2 1 i j k t ctin zdf_avt_avmu_avmv 2 from bn2_rn2 1 i+1 j k t ctin zdf_avt_avmu_avmv 3 from bn2_rn2 1 i j+1 k t ctin zdf_avt_avmu_avmv 4 from ua 1 i-1 j 30 t-1 ctin zdf_avt_avmu_avmv 5 from ua 1 i-1 j+1 30 t-1 ctin zdf_avt_avmu_avmv 6 from ua 1 i j 30 t-1 ctin zdf_avt_avmu_avmv 7 from ua 1 i j+1 30 t-1 ctin zdf_avt_avmu_avmv 8 from ua 1 i-1 j 2 t-1 ctin zdf_avt_avmu_avmv 9 from ua 1 i-1 j+1 2 t-1 ctin zdf_avt_avmu_avmv 10 from ua 1 i j 2 t-1 ctin zdf_avt_avmu_avmv 11 from ua 1 i j+1 2 t-1 ctin zdf_avt_avmu_avmv 12 from va 1 i j-1 30 t-1 ctin zdf_avt_avmu_avmv 13 from va 1 i j 30 t-1 ctin zdf_avt_avmu_avmv 14 from va 1 i+1 j-1 30 t-1 ctin zdf_avt_avmu_avmv 15 from va 1 i+1 j 30 t-1 ctin zdf_avt_avmu_avmv 16 from va 1 i j-1 2 t-1 ctin zdf_avt_avmu_avmv 17 from va 1 i j 2 t-1 ctin zdf_avt_avmu_avmv 18 from va 1 i+1 j-1 2 t-1 ctin zdf_avt_avmu_avmv 19 from va 1 i+1 j 2 t-1 ctin zdfmxl_hmld 1..NZ from zdf_avt_avmu_avmv 1 i j 1..NZ t ctin zdfmxl_nmln_hmlp_hmlpt 1..NZ from rhop 1 i j 1..NZ t-1 #---------->trasbc ctin ta_sa_trasbc 1 from sbcgyre_qsr_qns 2 i j t ctin ta_sa_trasbc 2 from sbcgyre_emps 1 i j t ctin ta_sa_trasbc 3 from sa 1 i j 1 t-1 #---------->traqsr ctin ta_traqsr 1 from sbcgyre_qsr_qns 1 i j t ctin ta_traqsr 2 from ta_sa_trasbc 1 i j t #---------->traadv_cen2 ctin zcent_hor_traadv_cen2 1 from ua 1 i j k t-1 ctin zcent_hor_traadv_cen2 2 from va 1 i j k t-1 ctin zcent_hor_traadv_cen2 3 from ta 1 i j k t-1 ctin zcent_hor_traadv_cen2 4 from ta 1 i j+1 k t-1 ctin zcent_hor_traadv_cen2 5 from ta 1 i+1 j k t-1 ctin zcens_hor_traadv_cen2 1 from ua 1 i j k t-1 ctin zcens_hor_traadv_cen2 2 from va 1 i j k t-1 ctin zcens_hor_traadv_cen2 3 from sa 1 i j k t-1 ctin zcens_hor_traadv_cen2 4 from sa 1 i j+1 k t-1 ctin zcens_hor_traadv_cen2 5 from sa 1 i+1 j k t-1 ctin ta_hor_traadv_cen2 1 from ta_traqsr 1 i j k t ctin ta_hor_traadv_cen2 2 from zcent_hor_traadv_cen2 1 i-1 j k t ctin ta_hor_traadv_cen2 3 from zcent_hor_traadv_cen2 1 i j k t ctin ta_hor_traadv_cen2 4 from zcent_hor_traadv_cen2 2 i j-1 k t ctin ta_hor_traadv_cen2 5 from zcent_hor_traadv_cen2 2 i j k t ctin sa_hor_traadv_cen2 1 from ta_sa_trasbc 2 i j t ctin sa_hor_traadv_cen2 2 from zcens_hor_traadv_cen2 1 i-1 j k t ctin sa_hor_traadv_cen2 3 from zcens_hor_traadv_cen2 1 i j k t ctin sa_hor_traadv_cen2 4 from zcens_hor_traadv_cen2 2 i j-1 k t ctin sa_hor_traadv_cen2 5 from zcens_hor_traadv_cen2 2 i j k t ctin zcent_ver_traadv_cen2 1 from wa 1 i j k t-1 ctin zcent_ver_traadv_cen2 2 from ta 1 i j k t-1 ctin zcent_ver_traadv_cen2 3 from ta 1 i j k-1 t-1 ctin zcens_ver_traadv_cen2 1 from wa 1 i j k t-1 ctin zcens_ver_traadv_cen2 2 from sa 1 i j k t-1 ctin zcens_ver_traadv_cen2 3 from sa 1 i j k-1 t-1 ctin ta_ver_traadv_cen2 1 from ta_hor_traadv_cen2 1 i j k t ctin ta_ver_traadv_cen2 2 from zcent_ver_traadv_cen2 1 i j k t ctin ta_ver_traadv_cen2 3 from zcent_ver_traadv_cen2 1 i j k+1 t ctin sa_ver_traadv_cen2 1 from sa_hor_traadv_cen2 1 i j k t ctin sa_ver_traadv_cen2 2 from zcens_ver_traadv_cen2 1 i j k t ctin sa_ver_traadv_cen2 3 from zcens_ver_traadv_cen2 1 i j k+1 t #---------->traldf_lap ctin ztuv_traldf_lap 1 from tb 1 i j k t-1 ctin ztuv_traldf_lap 2 from tb 1 i+1 j k t-1 ctin ztuv_traldf_lap 3 from tb 1 i j+1 k t-1 ctin zsuv_traldf_lap 1 from sb 1 i j k t-1 ctin zsuv_traldf_lap 2 from sb 1 i+1 j k t-1 ctin zsuv_traldf_lap 3 from sb 1 i j+1 k t-1 ctin ta_traldf_lap 1 from ta_ver_traadv_cen2 1 i j k t ctin ta_traldf_lap 2 from ztuv_traldf_lap 1 i j k t ctin ta_traldf_lap 3 from ztuv_traldf_lap 1 i-1 j k t ctin ta_traldf_lap 4 from ztuv_traldf_lap 2 i j k t ctin ta_traldf_lap 5 from ztuv_traldf_lap 2 i j-1 k t ctin sa_traldf_lap 1 from sa_ver_traadv_cen2 1 i j k t ctin sa_traldf_lap 2 from zsuv_traldf_lap 1 i j k t ctin sa_traldf_lap 3 from zsuv_traldf_lap 1 i-1 j k t ctin sa_traldf_lap 4 from zsuv_traldf_lap 2 i j k t ctin sa_traldf_lap 5 from zsuv_traldf_lap 2 i j-1 k t #---------->trazdf_imp ctin zwisd_trazdf_imp 1 from zdf_avt_avmu_avmv 1 i j k t ctin zwisd_trazdf_imp 2 from zdf_avt_avmu_avmv 1 i j k+1 t ctin zrhs_trazdf_imp 1 from ta_traldf_lap 1 i j k t ctin zrhs_trazdf_imp 2 from tb 1 i j k t-1 ctin zrhs_sa_trazdf_imp 1 from sa_traldf_lap 1 i j k t ctin zrhs_sa_trazdf_imp 2 from sb 1 i j k t-1 ctin zwt_trazdf_imp 1 from zwisd_trazdf_imp 1 i j k t ctin zwt_trazdf_imp 2 from zwisd_trazdf_imp 2 i j k-1 t ctin zwt_trazdf_imp 3 from zwisd_trazdf_imp 3 i j k t ctin zwt_trazdf_imp 4 from zwt_trazdf_imp 1 i j k-1 t ctin ta_de_trazdf_imp 1 from zwisd_trazdf_imp 1 i j k t ctin ta_de_trazdf_imp 2 from ta_de_trazdf_imp 1 i j k-1 t ctin ta_de_trazdf_imp 3 from zrhs_trazdf_imp 1 i j k t ctin ta_de_trazdf_imp 4 from zwt_trazdf_imp 1 i j k-1 t ctin ta 1 from zwisd_trazdf_imp 2 i j k t ctin ta 2 from ta 1 i j k+1 t ctin ta 3 from ta_de_trazdf_imp 1 i j k t ctin ta 4 from zwt_trazdf_imp 1 i j k t ctin ta 5 from ta_c 1 i j k ctin sa_de_trazdf_imp 1 from zwisd_trazdf_imp 1 i j k t ctin sa_de_trazdf_imp 2 from sa_de_trazdf_imp 1 i j k-1 t ctin sa_de_trazdf_imp 3 from zrhs_sa_trazdf_imp 1 i j k t ctin sa_de_trazdf_imp 4 from zwt_trazdf_imp 1 i j k-1 t ctin sa 1 from zwisd_trazdf_imp 2 i j k t ctin sa 2 from sa 1 i j k+1 t ctin sa 3 from sa_de_trazdf_imp 1 i j k t ctin sa 4 from zwt_trazdf_imp 1 i j k t ctin sa 5 from sa_c 1 i j k #---------->tra_nxt ctin tb 1 from tb 1 i j k t-1 ctin tb 2 from ta 1 i j k t-1 ctin tb 3 from ta 1 i j k t ctin tb 4 from ta_c 1 i j k ctin sb 1 from sb 1 i j k t-1 ctin sb 2 from sa 1 i j k t-1 ctin sb 3 from sa 1 i j k t ctin sb 4 from sa_c 1 i j k #---------->eos ctin rhd 1 from tb 1 i j k t ctin rhd 2 from sb 1 i j k t ctin rhop 1 from rhd 1 i j k t #---------->dynadv_cen2 ctin hmf_TF_dynadv_cen2 1 from ua 1 i j k t-1 ctin hmf_TF_dynadv_cen2 2 from ua 1 i+1 j k t-1 ctin hmf_TF_dynadv_cen2 3 from ua 1 i j+1 k t-1 ctin hmf_TF_dynadv_cen2 4 from va 1 i j k t-1 ctin hmf_TF_dynadv_cen2 5 from va 1 i+1 j k t-1 ctin hmf_TF_dynadv_cen2 6 from va 1 i j+1 k t-1 ctin zua_dhmf_dynadv_cen2 1 from hmf_TF_dynadv_cen2 1 i j k t ctin zua_dhmf_dynadv_cen2 2 from hmf_TF_dynadv_cen2 1 i-1 j k t ctin zua_dhmf_dynadv_cen2 3 from hmf_TF_dynadv_cen2 2 i j k t ctin zua_dhmf_dynadv_cen2 4 from hmf_TF_dynadv_cen2 2 i j-1 k t ctin zva_dhmf_dynadv_cen2 1 from hmf_TF_dynadv_cen2 3 i j k t ctin zva_dhmf_dynadv_cen2 2 from hmf_TF_dynadv_cen2 3 i-1 j k t ctin zva_dhmf_dynadv_cen2 3 from hmf_TF_dynadv_cen2 4 i j k t ctin zva_dhmf_dynadv_cen2 4 from hmf_TF_dynadv_cen2 4 i j-1 k t ctin zfuv_UW_dynadv_cen2 1 from wa 1 i j k t-1 ctin zfuv_UW_dynadv_cen2 2 from wa 1 i+1 j k t-1 ctin zfuv_UW_dynadv_cen2 3 from wa 1 i j+1 k t-1 ctin zfuv_UW_dynadv_cen2 4 from ua 1 i j k t-1 ctin zfuv_UW_dynadv_cen2 5 from ua 1 i j k-1 t-1 ctin zfuv_UW_dynadv_cen2 6 from va 1 i j k t-1 ctin zfuv_UW_dynadv_cen2 7 from va 1 i j k-1 t-1 ctin ua_dynadv_cen2 1 from zfuv_UW_dynadv_cen2 1 i j k t ctin ua_dynadv_cen2 2 from zfuv_UW_dynadv_cen2 1 i j k+1 t ctin ua_dynadv_cen2 3 from zua_dhmf_dynadv_cen2 1 i j k t ctin va_dynadv_cen2 1 from zfuv_UW_dynadv_cen2 2 i j k t ctin va_dynadv_cen2 2 from zfuv_UW_dynadv_cen2 2 i j k+1 t ctin va_dynadv_cen2 3 from zva_dhmf_dynadv_cen2 1 i j k t #---------->vor_ene ctin zwxyz_vor_ene 1 from ua 1 i j k t-1 ctin zwxyz_vor_ene 2 from ua 1 i j+1 k t-1 ctin zwxyz_vor_ene 3 from va 1 i j k t-1 ctin zwxyz_vor_ene 4 from va 1 i+1 j k t-1 ctin ua_vor_ene 1 from ua_dynadv_cen2 1 i j k t ctin ua_vor_ene 2 from zwxyz_vor_ene 3 i j-1 k t ctin ua_vor_ene 3 from zwxyz_vor_ene 3 i j k t ctin ua_vor_ene 4 from zwxyz_vor_ene 2 i j-1 k t ctin ua_vor_ene 5 from zwxyz_vor_ene 2 i j k t ctin ua_vor_ene 6 from zwxyz_vor_ene 2 i+1 j-1 k t ctin ua_vor_ene 7 from zwxyz_vor_ene 2 i+1 j k t ctin va_vor_ene 1 from va_dynadv_cen2 1 i j k t ctin va_vor_ene 2 from zwxyz_vor_ene 3 i-1 j k t ctin va_vor_ene 3 from zwxyz_vor_ene 3 i j k t ctin va_vor_ene 4 from zwxyz_vor_ene 1 i-1 j k t ctin va_vor_ene 5 from zwxyz_vor_ene 1 i-1 j+1 k t ctin va_vor_ene 6 from zwxyz_vor_ene 1 i j k t ctin va_vor_ene 7 from zwxyz_vor_ene 1 i j+1 k t #---------->dyn_ldf_lap ctin ua_dyn_ldf_lap 1 from ua_vor_ene 1 i j k t ctin ua_dyn_ldf_lap 2 from rotn 1 i j-1 k t-2 ctin ua_dyn_ldf_lap 3 from rotn 1 i j k t-2 ctin ua_dyn_ldf_lap 4 from hdivn 1 i j k t-2 ctin ua_dyn_ldf_lap 5 from hdivn 1 i+1 j k t-2 ctin va_dyn_ldf_lap 1 from va_vor_ene 1 i j k t ctin va_dyn_ldf_lap 2 from rotn 1 i-1 j k t-2 ctin va_dyn_ldf_lap 3 from rotn 1 i j k t-2 ctin va_dyn_ldf_lap 4 from hdivn 1 i j k t-2 ctin va_dyn_ldf_lap 5 from hdivn 1 i j+1 k t-2 #---------->dyn__hpg_zco ctin zhpij_dyn_hpg_zco 1 from rhd 1 i+1 j k t ctin zhpij_dyn_hpg_zco 2 from rhd 1 i j+1 k t ctin zhpij_dyn_hpg_zco 3 from rhd 1 i j k t ctin zhpij_dyn_hpg_zco 4 from rhd 1 i+1 j k-1 t ctin zhpij_dyn_hpg_zco 5 from rhd 1 i j+1 k-1 t ctin zhpij_dyn_hpg_zco 6 from rhd 1 i j k-1 t ctin zhpij_dyn_hpg_zco 7 from zhpij_dyn_hpg_zco 1 i j k-1 t ctin zhpij_dyn_hpg_zco 8 from zhpij_dyn_hpg_zco 2 i j k-1 t ctin ua_dyn_hpg_zco 1 from ua_dyn_ldf_lap 1 i j k t ctin ua_dyn_hpg_zco 2 from zhpij_dyn_hpg_zco 1 i j k t ctin va_dyn_hpg_zco 1 from va_dyn_ldf_lap 1 i j k t ctin va_dyn_hpg_zco 2 from zhpij_dyn_hpg_zco 2 i j k t #---------->dynzdf_imp ctin zwisd_ua_dynzdf_imp 1 from zdf_avt_avmu_avmv 2 i j k t ctin zwisd_ua_dynzdf_imp 2 from zdf_avt_avmu_avmv 2 i j k+1 t ctin zwisd_va_dynzdf_imp 1 from zdf_avt_avmu_avmv 3 i j k t ctin zwisd_va_dynzdf_imp 2 from zdf_avt_avmu_avmv 3 i j k+1 t ctin zrhs_ua_dynzdf_imp 1 from ua_dyn_hpg_zco 1 i j k t ctin zrhs_ua_dynzdf_imp 2 from ub 1 i j k t-1 ctin zrhs_ua_dynzdf_imp 3 from sbcgyre_utau_vtau 1 i j t ctin zrhs_va_dynzdf_imp 1 from va_dyn_hpg_zco 1 i j k t ctin zrhs_va_dynzdf_imp 2 from vb 1 i j k t-1 ctin zrhs_va_dynzdf_imp 3 from sbcgyre_utau_vtau 2 i j t ctin zwt_ua_dynzdf_imp 1 from zwisd_ua_dynzdf_imp 1 i j k t ctin zwt_ua_dynzdf_imp 2 from zwisd_ua_dynzdf_imp 2 i j k-1 t ctin zwt_ua_dynzdf_imp 3 from zwisd_ua_dynzdf_imp 3 i j k t ctin zwt_ua_dynzdf_imp 4 from zwt_ua_dynzdf_imp 1 i j k-1 t ctin zwt_va_dynzdf_imp 1 from zwisd_va_dynzdf_imp 1 i j k t ctin zwt_va_dynzdf_imp 2 from zwisd_va_dynzdf_imp 2 i j k-1 t ctin zwt_va_dynzdf_imp 3 from zwisd_va_dynzdf_imp 3 i j k t ctin zwt_va_dynzdf_imp 4 from zwt_va_dynzdf_imp 1 i j k-1 t ctin ua_de_dynzdf_imp 1 from zwisd_ua_dynzdf_imp 1 i j k t ctin ua_de_dynzdf_imp 2 from ua_de_dynzdf_imp 1 i j k-1 t ctin ua_de_dynzdf_imp 3 from zrhs_ua_dynzdf_imp 1 i j k t ctin ua_de_dynzdf_imp 4 from zwt_ua_dynzdf_imp 1 i j k-1 t ctin ua_dynzdf_imp 1 from zwisd_ua_dynzdf_imp 2 i j k t ctin ua_dynzdf_imp 2 from ua_dynzdf_imp 1 i j k+1 t ctin ua_dynzdf_imp 3 from ua_de_dynzdf_imp 1 i j k t ctin ua_dynzdf_imp 4 from zwt_ua_dynzdf_imp 1 i j k t ctin va_de_dynzdf_imp 1 from zwisd_va_dynzdf_imp 1 i j k t ctin va_de_dynzdf_imp 2 from va_de_dynzdf_imp 1 i j k-1 t ctin va_de_dynzdf_imp 3 from zrhs_va_dynzdf_imp 1 i j k t ctin va_de_dynzdf_imp 4 from zwt_va_dynzdf_imp 1 i j k-1 t ctin va_dynzdf_imp 1 from zwisd_va_dynzdf_imp 2 i j k t ctin va_dynzdf_imp 2 from va_dynzdf_imp 1 i j k+1 t ctin va_dynzdf_imp 3 from va_de_dynzdf_imp 1 i j k t ctin va_dynzdf_imp 4 from zwt_va_dynzdf_imp 1 i j k t ctin ua_norm_dynzdf 1 from ua_dynzdf_imp 1 i j k t ctin ua_norm_dynzdf 2 from ub 1 i j k t-1 ctin va_norm_dynzdf 1 from va_dynzdf_imp 1 i j k t ctin va_norm_dynzdf 2 from vb 1 i j k t-1 #---------->ddynspg_flt ctin spguv_now_dynspg 1 from sshn 1 i j t-1 ctin spguv_now_dynspg 2 from sshn 1 i j+1 t-1 ctin spguv_now_dynspg 3 from sshn 1 i+1 j t-1 ctin ua_1_dynspg_flt 1 from ua_norm_dynzdf 1 i j k t ctin ua_1_dynspg_flt 2 from ub 1 i j k t-1 ctin ua_1_dynspg_flt 3 from spguv_now_dynspg 1 i j t ctin va_1_dynspg_flt 1 from va_norm_dynzdf 1 i j k t ctin va_1_dynspg_flt 2 from vb 1 i j k t-1 ctin va_1_dynspg_flt 3 from spguv_now_dynspg 2 i j t ctin sum_spgu_dynspg_flt 1..NZ from ua_1_dynspg_flt 1 i j 1..NZ t ctin sum_spgv_dynspg_flt 1..NZ from va_1_dynspg_flt 1 i j 1..NZ t ctin gcb_dynspg_flt 1 from sum_spgu_dynspg_flt 1 i j t ctin gcb_dynspg_flt 2 from sum_spgu_dynspg_flt 1 i-1 j t ctin gcb_dynspg_flt 3 from sum_spgv_dynspg_flt 1 i j t ctin gcb_dynspg_flt 4 from sum_spgv_dynspg_flt 1 i j-1 t ctin gcx_dynspg_flt 1 from gcx2 1 i j t-1 ctin gcx_dynspg_flt 2 from gcx2 1 i j t-2 ctin spguv_dynspg_flt 1 from gcx2 1 i+1 j t ctin spguv_dynspg_flt 2 from gcx2 1 i j t ctin spguv_dynspg_flt 3 from gcx2 1 i j+1 t ctin ua 1 from ua_1_dynspg_flt 1 i j k t ctin ua 2 from spguv_dynspg_flt 1 i j t ctin ua 3 from ua_c 1 i j k ctin va 1 from va_1_dynspg_flt 1 i j k t ctin va 2 from spguv_dynspg_flt 2 i j t ctin va 3 from va_c 1 i j k ctin sshn 1 from sshb 1 i j t-1 ctin sshn 2 from wa 1 i j 1 t-1 ctin sshn 3 from sbcgyre_emp 1 i j t ctin sshn 4 from sshn_c 1 i j ctin sshb 1 from sshb 1 i j t-1 ctin sshb 2 from sshn 1 i j t-1 ctin sshb 3 from sshn 1 i j t ctin sshb 4 from sshn_c 1 i j ############## Ajout de ctin "virtuels" ############## #ctin solsor_dynspg_flt 1..9 from gcx_dynspg_flt 1 i%~1 j%~1 t #ctin solsor_dynspg_flt 10..18 from gcb_dynspg_flt 1 i%~1 j%~1 t #ctin solsor_dynspg_flt 19 from solsor_dynspg_flt 1 i-1 j-1 t #ctin gcx2 1 from solsor_dynspg_flt 1 i j t ctin solsor_flag 1 from solsor_gx2_x_r 2 i j k t ctin solsor_flag 2 from solsor_flag 2 NX NY k-1 t ctin solsor_flag 3 from solsor_flag 1 i-1 NY k t ctin solsor_flag 4 from solsor_flag 1 i j-1 k t ctin solsor_gx1_x_r 1 from gcx_dynspg_flt 1 i j t ctin solsor_gx1_x_r 2 from gcb_dynspg_flt 1 i j t ctin solsor_gx1_x_r 3 from solsor_gx2_x_r 1 i j-1 k-1 t ctin solsor_gx1_x_r 4 from solsor_gx2_x_r 1 i-1 j k-1 t ctin solsor_gx1_x_r 5 from solsor_gx2_x_r 1 i+1 j k-1 t ctin solsor_gx1_x_r 6 from solsor_gx2_x_r 1 i j+1 k-1 t ctin solsor_gx1_x_r 7 from solsor_gx2_x_r 1 i j k-1 t ctin solsor_gx1_x_r 8 from solsor_flag 2 NX NY k-1 t ctin solsor_gx2_x_r 1 from gcx_dynspg_flt 1 i j t ctin solsor_gx2_x_r 2 from gcb_dynspg_flt 1 i j t ctin solsor_gx2_x_r 3 from solsor_gx1_x_r 1 i j-1 k t ctin solsor_gx2_x_r 4 from solsor_gx1_x_r 1 i-1 j k t ctin solsor_gx2_x_r 5 from solsor_gx1_x_r 1 i+1 j k t ctin solsor_gx2_x_r 6 from solsor_gx1_x_r 1 i j+1 k t ctin solsor_gx2_x_r 7 from solsor_gx1_x_r 1 i j k t ctin solsor_gx2_x_r 8 from solsor_flag 2 NX NY k-1 t ctin solsor_gx2_x_r 9 from solsor_gx1_x_r 2 i j k t ctin gcx2 1 from solsor_gx2_x_r 1 i j NMAX t #---------->dyn_nxt ctin ub 1 from ub 1 i j k t-1 ctin ub 2 from ua 1 i j k t-1 ctin ub 3 from ua 1 i j k t ctin ub 4 from ua_c 1 i j k ctin vb 1 from vb 1 i j k t-1 ctin vb 2 from va 1 i j k t-1 ctin vb 3 from va 1 i j k t ctin vb 4 from va_c 1 i j k #---------->divcur ctin hdivn 1 from ua 1 i j k t ctin hdivn 2 from ua 1 i-1 j k t ctin hdivn 3 from va 1 i j k t ctin hdivn 4 from va 1 i j-1 k t ctin rotn 1 from va 1 i+1 j k t ctin rotn 2 from va 1 i j k t ctin rotn 3 from ua 1 i j+1 k t ctin rotn 4 from ua 1 i j k t #---------->wzv ctin wa 1 from wa 1 i j k+1 t ctin wa 2 from hdivn 1 i j k t #----------> #ORDER----- #ORDER----- #order modinspace S3d # order YA3 YA2 YA1 # ta_c # forder #forder order modinspace S3dt #---------->sbcgyre order YA2 YA1 sbcgyre_qsr_qns sbcgyre_emp1 sbcgyre_zsumemp_zsurf forder order YA2 YA1 sbcgyre_emp sbcgyre_emps sbcgyre_utau_vtau sbcgyre_wndm forder #---------->sbcgyre + bn2_rn2 + zdf + trasbc + traqsr + traadv + # traldf + trazdf + tra_nxt// # order YA1 YA2 # sbcgyre_qsr_qns sbcgyre_emp1 # order YA3 # bn2_rn2 zcent_hor_traadv_cen2 zcens_hor_traadv_cen2 # zcent_ver_traadv_cen2 zcens_ver_traadv_cen2 ztuv_traldf_lap zsuv_traldf_lap # forder # forder # #NO PARALLEL # order YA2 YA1 # sbcgyre_zsum3emp_zsurf # # forder # order YA1 YA2 # order YB3 # zdf_avt_avmu_avmv # zwisd_trazdf_imp # forder # sbcgyre_emp sbcgyre_emps sbcgyre_utau_vtau # zdfmxl_hmld zdfmxl_nmln_hmlp_hmlpt ta_sa_trasbc # ta_traqsr order YB3 # ta_hor_traadv_cen2 sa_hor_traadv_cen2 ta_ver_traadv_cen2 sa_ver_traadv_cen2 ta_traldf_lap sa_traldf_lap zrhs_trazdf_imp zrhs_sa_trazdf_imp # forder order YA3 zwt_trazdf_imp ta_de_trazdf_imp sa_de_trazdf_imp forder order YB3 ta sa tb sb rhd rhop forder # forder # order YA1 YA2 # sbcgyre_wndm # forder #---------->bn2 order YA3 YA2 YA1 bn2_rn2 forder #---------->zdf order YA3 YA2 YA1 zdf_avt_avmu_avmv forder order YA2 YA1 zdfmxl_hmld zdfmxl_nmln_hmlp_hmlpt forder #---------->trasbc order YA2 YA1 ta_sa_trasbc forder #---------->traqsr order YA3 YA2 YA1 ta_traqsr forder #------> traadv_cen2 order YA3 order YA2 YA1 zcent_hor_traadv_cen2 zcens_hor_traadv_cen2 forder order YA2 YA1 ta_hor_traadv_cen2 sa_hor_traadv_cen2 forder forder order YA3 YA2 YA1 zcent_ver_traadv_cen2 zcens_ver_traadv_cen2 forder order YA3 YA2 YA1 ta_ver_traadv_cen2 sa_ver_traadv_cen2 forder #------> traldf_lap order YA3 YA2 YA1 ztuv_traldf_lap zsuv_traldf_lap ta_traldf_lap sa_traldf_lap forder #------> trazdf_imp order YA3 YA2 YA1 zwisd_trazdf_imp zrhs_trazdf_imp zrhs_sa_trazdf_imp forder order YA3 YA2 YA1 zwt_trazdf_imp ta_de_trazdf_imp sa_de_trazdf_imp forder order YB3 YA2 YA1 ta sa forder #---------->tra_nxt order YA3 YA2 YA1 tb sb forder #---------->eos order YA3 YA2 YA1 rhd rhop forder #------> dynadv_cen2 order YA3 order YA2 YA1 hmf_TF_dynadv_cen2 forder order YA2 YA1 zua_dhmf_dynadv_cen2 zva_dhmf_dynadv_cen2 forder forder order YA3 YA2 YA1 zfuv_UW_dynadv_cen2 forder order YA3 YA2 YA1 ua_dynadv_cen2 va_dynadv_cen2 forder #------> vor_ene && dyn_ldf_lap order YA3 order YA2 YA1 zwxyz_vor_ene forder order YA2 YA1 ua_vor_ene va_vor_ene ua_dyn_ldf_lap va_dyn_ldf_lap forder forder #---------->dyn__hpg_zco order YA3 YA2 YA1 zhpij_dyn_hpg_zco ua_dyn_hpg_zco va_dyn_hpg_zco forder #---------->dynzdf_imp order YA3 YA2 YA1 zwisd_ua_dynzdf_imp zwisd_va_dynzdf_imp zrhs_ua_dynzdf_imp zrhs_va_dynzdf_imp forder order YA3 YA2 YA1 zwt_ua_dynzdf_imp ua_de_dynzdf_imp zwt_va_dynzdf_imp va_de_dynzdf_imp forder order YB3 YA2 YA1 ua_dynzdf_imp va_dynzdf_imp forder order YA3 YA2 YA1 ua_norm_dynzdf va_norm_dynzdf forder #---------->dynspg_flt order YA2 YA1 spguv_now_dynspg forder order YA3 YA2 YA1 ua_1_dynspg_flt va_1_dynspg_flt forder order YA2 YA1 sum_spgu_dynspg_flt sum_spgv_dynspg_flt forder order YA2 YA1 gcb_dynspg_flt gcx_dynspg_flt forder forder order modinspace Ssolsor order YA3 order YA2 YA1 solsor_gx1_x_r forder order YA2 YA1 solsor_gx2_x_r forder order YA1 YA2 solsor_flag forder forder forder order modinspace S3dt_b order YA2 YA1 gcx2 forder order YA2 YA1 spguv_dynspg_flt forder order YA3 YA2 YA1 ua va forder order YA2 YA1 sshn sshb forder #---------->dyn_nxt order YA3 YA2 YA1 ub vb forder #---------->divcur order YA3 YA2 YA1 hdivn rotn forder #---------->wzv order YB3 YA2 YA1 wa forder forder #order spaceintraj Tcst # S3d #forder order spaceintraj Tsbd S3dt Ssolsor S3dt_b forder #USER FUNCTIONS ---------------------------------INSERT_FCT insert_fct xdisplay insert_fct xcomparYF insert_fct arg xistate_init insert_fct arg true_target_in_tab insert_fct arg xrst_save insert_fct arg xchangesavemode insert_fct arg xwriteout insert_fct arg xwritegrad insert_fct arg xinitnc #insert_fct arg load_shape_func #insert_fct arg load_stdev_pca #insert_fct arg load_mean