Changeset 270 for trunk/LMDZ.COMMON/libf/dyn3dpar/conf_gcm.F
- Timestamp:
- Aug 18, 2011, 12:09:27 PM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.COMMON/libf/dyn3dpar/conf_gcm.F
r119 r270 1 1 ! 2 ! $Id: conf_gcm.F 14 38 2010-10-08 10:19:34Z jghattas $2 ! $Id: conf_gcm.F 1418 2010-07-19 15:11:24Z jghattas $ 3 3 ! 4 4 c … … 6 6 SUBROUTINE conf_gcm( tapedef, etatinit ) 7 7 c 8 USE control_mod 8 9 #ifdef CPP_IOIPSL 9 10 use IOIPSL … … 12 13 use ioipsl_getincom 13 14 #endif 14 use misc_mod15 use mod_filtre_fft, ONLY : use_filtre_fft16 use mod_hallo, ONLY : use_mpi_alloc17 use parallel, ONLY : omp_chunk18 USE control_mod19 15 IMPLICIT NONE 20 16 c----------------------------------------------------------------------- … … 37 33 #include "serre.h" 38 34 #include "comdissnew.h" 39 !#include "clesphys.h"40 #include "iniprint.h"41 35 #include "temps.h" 42 36 #include "comconst.h" 43 37 44 38 ! FH 2008/05/09 On elimine toutes les clefs physiques dans la dynamique 39 ! #include "clesphys.h" 40 #include "iniprint.h" 45 41 c 46 42 c … … 53 49 LOGICAL fxyhypbb, ysinuss 54 50 INTEGER i 55 51 LOGICAL use_filtre_fft 56 52 c 57 53 c ------------------------------------------------------------------- … … 82 78 c initialisations: 83 79 c ---------------- 84 adjust=.false. 85 call getin('adjust',adjust) 86 87 itaumax=0 88 call getin('itaumax',itaumax); 89 if (itaumax<=0) itaumax=HUGE(itaumax) 90 80 91 81 !Config Key = lunout 92 82 !Config Desc = unite de fichier pour les impressions … … 190 180 191 181 !Config Key = nsplit_phys 192 !Config Desc = nombre d'iteration de la physique 193 !Config Def = 240 194 !Config Help = nombre d'itration de la physique 195 ! 182 !Config Desc = nombre de subdivisions par pas physique 183 !Config Def = 1 184 !Config Help = nombre de subdivisions par pas physique 196 185 nsplit_phys = 1 197 186 CALL getin('nsplit_phys',nsplit_phys) … … 241 230 CALL getin('output_grads_dyn',output_grads_dyn) 242 231 243 !Config Key = idissip232 !Config Key = dissip_period 244 233 !Config Desc = periode de la dissipation 245 !Config Def = 10234 !Config Def = 0 246 235 !Config Help = periode de la dissipation 247 !Config (en pas) ... a completer ! 248 idissip = 10 249 CALL getin('idissip',idissip) 236 !Config dissip_period=0 => la valeur sera calcule dans inidissip 237 !Config dissip_period>0 => on prend cette valeur 238 dissip_period = 0 239 CALL getin('dissip_period',dissip_period) 250 240 251 241 ccc .... P. Le Van , modif le 29/04/97 .pour la dissipation ... … … 340 330 CALL getin('tau_top_bound',tau_top_bound) 341 331 342 !343 332 !Config Key = coefdis 344 333 !Config Desc = coefficient pour gamdissip … … 407 396 ip_ebil_dyn = 0 408 397 CALL getin('ip_ebil_dyn',ip_ebil_dyn) 409 !410 411 398 412 399 ccc .... P. Le Van , ajout le 7/03/95 .pour le zoom ... … … 613 600 offline = .FALSE. 614 601 CALL getin('offline',offline) 615 IF (offline .AND. adjust) THEN 616 WRITE(lunout,*) 617 & 'WARNING : option offline does not work with adjust=y :' 618 WRITE(lunout,*) 'the files defstoke.nc, fluxstoke.nc ', 619 & 'and fluxstokev.nc will not be created' 620 WRITE(lunout,*) 621 & 'only the file phystoke.nc will still be created ' 622 END IF 623 602 624 603 !Config Key = config_inca 625 604 !Config Desc = Choix de configuration de INCA … … 655 634 ok_dyn_ave = .FALSE. 656 635 CALL getin('ok_dyn_ave',ok_dyn_ave) 636 657 637 658 638 write(lunout,*)' #########################################' … … 669 649 write(lunout,*)' day_step = ', day_step 670 650 write(lunout,*)' iperiod = ', iperiod 671 write(lunout,*)' nsplit_phys = ', nsplit_phys672 651 write(lunout,*)' iconser = ', iconser 673 652 write(lunout,*)' iecri = ', iecri 674 653 write(lunout,*)' periodav = ', periodav 675 654 write(lunout,*)' output_grads_dyn = ', output_grads_dyn 676 write(lunout,*)' idissip = ', idissip655 write(lunout,*)' dissip_period = ', dissip_period 677 656 write(lunout,*)' lstardis = ', lstardis 678 657 write(lunout,*)' nitergdiv = ', nitergdiv … … 816 795 offline = .FALSE. 817 796 CALL getin('offline',offline) 818 IF (offline .AND. adjust) THEN819 WRITE(lunout,*)820 & 'WARNING : option offline does not work with adjust=y :'821 WRITE(lunout,*) 'the files defstoke.nc, fluxstoke.nc ',822 & 'and fluxstokev.nc will not be created'823 WRITE(lunout,*)824 & 'only the file phystoke.nc will still be created '825 END IF826 797 827 798 !Config Key = config_inca … … 836 807 837 808 !Config Key = ok_dynzon 838 !Config Desc = calcul et sortie des transports809 !Config Desc = sortie des transports zonaux dans la dynamique 839 810 !Config Def = n 840 !Config Help = Permet de mettre en route le calcul des transports811 !Config Help = 841 812 !Config 842 ok_dynzon = .FALSE.843 CALL getin('ok_dynzon',ok_dynzon)813 ok_dynzon = .FALSE. 814 CALL getin('ok_dynzon',ok_dynzon) 844 815 845 816 !Config Key = ok_dyn_ins … … 863 834 !Config Def = false 864 835 !Config Help = permet d'activer l'utilisation des FFT pour effectuer 865 !Config le filtrage aux poles. 836 !Config le filtrage aux poles. 837 ! Le filtre fft n'est pas implemente dans dyn3d 866 838 use_filtre_fft=.FALSE. 867 839 CALL getin('use_filtre_fft',use_filtre_fft) 868 840 869 IF (use_filtre_fft .AND. grossismx /= 1.0) THEN 870 write(lunout,*)'WARNING !!! ' 871 write(lunout,*)"Le zoom en longitude est incompatible", 872 & " avec l'utilisation du filtre FFT ", 873 & "---> filtre FFT désactivé " 874 use_filtre_fft=.FALSE. 841 IF (use_filtre_fft) THEN 842 write(lunout,*)'STOP !!!' 843 write(lunout,*)'use_filtre_fft n est pas implemente dans dyn3d' 844 STOP 875 845 ENDIF 876 846 877 878 879 !Config Key = use_mpi_alloc880 !Config Desc = Utilise un buffer MPI en m�moire globale881 !Config Def = false882 !Config Help = permet d'activer l'utilisation d'un buffer MPI883 !Config en m�moire globale a l'aide de la fonction MPI_ALLOC.884 !Config Cela peut am�liorer la bande passante des transferts MPI885 !Config d'un facteur 2886 use_mpi_alloc=.FALSE.887 CALL getin('use_mpi_alloc',use_mpi_alloc)888 889 !Config Key = omp_chunk890 !Config Desc = taille des blocs openmp891 !Config Def = 1892 !Config Help = defini la taille des packets d'it�ration openmp893 !Config distribu�e � chaque t�che lors de l'entr�e dans une894 !Config boucle parall�lis�e895 896 omp_chunk=1897 CALL getin('omp_chunk',omp_chunk)898 899 847 !Config key = ok_strato 900 848 !Config Desc = activation de la version strato … … 902 850 !Config Help = active la version stratosphérique de LMDZ de F. Lott 903 851 904 ok_strato=. FALSE.852 ok_strato=.TRUE. 905 853 CALL getin('ok_strato',ok_strato) 906 854 … … 928 876 ok_etat0 = .TRUE. 929 877 CALL getin('ok_etat0',ok_etat0) 878 879 !Config Key = grilles_gcm_netcdf 880 !Config Desc = creation de fichier grilles_gcm.nc dans create_etat0_limit 881 !Config Def = n 882 grilles_gcm_netcdf = .FALSE. 883 CALL getin('grilles_gcm_netcdf',grilles_gcm_netcdf) 930 884 931 885 write(lunout,*)' #########################################' … … 943 897 write(lunout,*)' periodav = ', periodav 944 898 write(lunout,*)' output_grads_dyn = ', output_grads_dyn 945 write(lunout,*)' idissip = ', idissip899 write(lunout,*)' dissip_period = ', dissip_period 946 900 write(lunout,*)' lstardis = ', lstardis 947 901 write(lunout,*)' nitergdiv = ', nitergdiv … … 968 922 write(lunout,*)' offline = ', offline 969 923 write(lunout,*)' config_inca = ', config_inca 970 write(lunout,*)' ok_dynzon = ', ok_dynzon 924 write(lunout,*)' ok_dynzon = ', ok_dynzon 971 925 write(lunout,*)' ok_dyn_ins = ', ok_dyn_ins 972 926 write(lunout,*)' ok_dyn_ave = ', ok_dyn_ave 973 write(lunout,*)' use_filtre_fft = ', use_filtre_fft974 write(lunout,*)' use_mpi_alloc = ', use_mpi_alloc975 write(lunout,*)' omp_chunk = ', omp_chunk976 927 write(lunout,*)' ok_strato = ', ok_strato 977 928 write(lunout,*)' ok_gradsfile = ', ok_gradsfile 978 929 write(lunout,*)' ok_limit = ', ok_limit 979 930 write(lunout,*)' ok_etat0 = ', ok_etat0 931 write(lunout,*)' grilles_gcm_netcdf = ', grilles_gcm_netcdf 980 932 c 981 933 RETURN
Note: See TracChangeset
for help on using the changeset viewer.