Changeset 1642
- Timestamp:
- Dec 13, 2016, 11:38:35 AM (8 years ago)
- Location:
- trunk/LMDZ.VENUS
- Files:
-
- 4 edited
- 3 copied
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.VENUS/deftank/context_lmdz_physics.xml
r1637 r1642 26 26 <grid id="grid_3d"> 27 27 <domain id="dom_glo" /> 28 < !-- <axis id="presnivs" /> -->29 < axis id="altitude" />28 <axis id="presnivs" /> 29 <!-- <axis id="altitude" /> --> 30 30 </grid> 31 31 <!-- to output scalars --> … … 40 40 enabled=".TRUE."> 41 41 42 <!-- 0D variables -->42 <!-- 0D variables 43 43 <field_group id="fields_0D" grid_ref="scalarpoint"> 44 44 <field id="ls" 45 45 long_name="Solar longitude" 46 46 unit="degrees" /> 47 </field_group> 47 </field_group> --> 48 48 49 49 <!-- 2D variables --> 50 50 <field_group id="fields_2D" domain_ref="dom_glo"> 51 <field id="ps "51 <field id="psol" 52 52 long_name="Surface Pressure" 53 53 unit="Pa" /> 54 <field id="a rea"54 <field id="aire" 55 55 long_name="Mesh area" 56 56 unit="m2" /> … … 59 59 <!-- 3D variables --> 60 60 <field_group id="fields_3D" grid_ref="grid_3d"> 61 <field id="temp erature"61 <field id="temp" 62 62 long_name="Atmospheric temperature" 63 63 unit="K" /> 64 <field id=" u"64 <field id="vitu" 65 65 long_name="Eastward Zonal Wind" 66 66 unit="m/s" /> 67 <field id="v "67 <field id="vitv" 68 68 long_name="Northward Meridional Wind" 69 69 unit="m/s" /> … … 81 81 enabled=".true."> 82 82 83 <!-- VARS 0D -->83 <!-- VARS 0D 84 84 <field_group operation="instant" 85 85 freq_op="1ts"> 86 86 <field field_ref="ls" /> 87 </field_group> 87 </field_group> --> 88 88 89 89 <!-- VARS 2D --> 90 90 <field_group operation="instant" 91 91 freq_op="1ts"> 92 <field field_ref="a rea" operation="once" />93 <field field_ref="ps " />92 <field field_ref="aire" operation="once" /> 93 <field field_ref="psol" /> 94 94 </field_group> 95 95 … … 97 97 <field_group operation="instant" 98 98 freq_op="1ts"> 99 <field field_ref="temp erature" />100 <field field_ref=" u" />101 <field field_ref="v " />99 <field field_ref="temp" /> 100 <field field_ref="vitu" /> 101 <field field_ref="vitv" /> 102 102 </field_group> 103 103 </file> … … 108 108 output_freq="1d" 109 109 type="one_file" 110 output_level="2" 110 111 enabled=".true."> 111 112 112 <!-- VARS 0D -->113 <!-- VARS 0D 113 114 <field_group operation="average" 114 115 freq_op="1ts"> 115 116 <field field_ref="ls" /> 116 </field_group> 117 </field_group> --> 117 118 118 119 <!-- VARS 2D --> 119 120 <field_group operation="average" 120 121 freq_op="1ts"> 121 <field field_ref="a rea" operation="once" />122 <field field_ref="ps " />122 <field field_ref="aire" level="1" operation="once" /> 123 <field field_ref="psol" level="1" /> 123 124 </field_group> 124 125 … … 126 127 <field_group operation="average" 127 128 freq_op="1ts"> 128 <field field_ref="temp erature" />129 <field field_ref=" u" />130 <field field_ref="v " />129 <field field_ref="temp" level="1" /> 130 <field field_ref="vitu" level="1" /> 131 <field field_ref="vitv" level="1" /> 131 132 </field_group> 132 133 </file> -
trunk/LMDZ.VENUS/deftank/iodef.xml
r1637 r1642 11 11 <variable_group id="parameters" > 12 12 <variable id="using_server" type="bool">false</variable> 13 <variable id="info_level" type="int">10 0</variable>13 <variable id="info_level" type="int">10</variable> 14 14 </variable_group> 15 15 </variable_definition> -
trunk/LMDZ.VENUS/libf/phyvenus/clesphys.h
r1442 r1642 12 12 LOGICAL ok_kzmin 13 13 LOGICAL callnlte,callnirco2,callthermos 14 LOGICAL ok_cloud, ok_chem, reinit_trac, ok_sedim , ok_deltatemp14 LOGICAL ok_cloud, ok_chem, reinit_trac, ok_sedim 15 15 INTEGER nbapp_rad, nbapp_chim, iflag_con, iflag_ajs 16 16 INTEGER lev_histins, lev_histday, lev_histmth … … 27 27 & ok_orodr, ok_orolf, ok_gw_nonoro, ok_kzmin, & 28 28 & callnlte,callnirco2,callthermos, & 29 & ok_cloud, ok_chem, reinit_trac, ok_sedim , ok_deltatemp29 & ok_cloud, ok_chem, reinit_trac, ok_sedim 30 30 31 31 COMMON/clesphys_i/ nbapp_rad, nbapp_chim, & -
trunk/LMDZ.VENUS/libf/phyvenus/conf_phys.F90
r1442 r1642 116 116 !Config Key = OK_mensuel 117 117 !Config Desc = Pour des sorties mensuelles 118 !Config Def = . true.118 !Config Def = .false. 119 119 !Config Help = Pour creer le fichier histmth contenant les sorties 120 120 ! mensuelles 121 121 ! 122 ok_mensuel = . true.122 ok_mensuel = .false. 123 123 call getin('OK_mensuel', ok_mensuel) 124 124 ! … … 361 361 ok_sedim = .FALSE. 362 362 call getin('ok_sedim',ok_sedim) 363 364 !365 !Config Key = ok_deltatemp366 !Config Desc =367 !Config Def = .FALSE.368 !Config Help =369 !370 ok_deltatemp = .FALSE.371 call getin('ok_deltatemp',ok_deltatemp)372 363 373 364 ! … … 502 493 write(numout,*)' ok_chem = ',ok_chem 503 494 write(numout,*)' ok_sedim = ',ok_sedim 504 write(numout,*)' ok_deltatemp = ',ok_deltatemp505 495 write(numout,*)' nb_mode = ',nb_mode 506 496 write(numout,*)' callnlte = ',callnlte -
trunk/LMDZ.VENUS/libf/phyvenus/physiq_mod.F
r1621 r1642 79 79 use mod_grid_phy_lmdz, only: nbp_lon 80 80 use infotrac_phy, only: iflag_trac, tname, ttext 81 use vertical_layers_mod, only: pseudoalt 82 #ifdef CPP_XIOS 83 use xios_output_mod, only: initialize_xios_output, 84 & update_xios_timestep, 85 & send_xios_field 86 #endif 81 87 IMPLICIT none 82 88 c====================================================================== … … 333 339 REAL :: d_tr(klon,klev,nqmax) 334 340 335 c Champ de modification de la temperature par rapport a VIRAII336 REAL delta_temp(klon,klev)337 c SAVE delta_temp338 REAL mat_dtemp(33,50)339 SAVE mat_dtemp340 341 341 c Variables tendance sedimentation 342 342 … … 469 469 470 470 CALL printflag( ok_journe,ok_instan ) 471 472 #ifdef CPP_XIOS 473 474 write(*,*) "physiq: call initialize_xios_output" 475 call initialize_xios_output(rjourvrai,gmtime,pdtphys,RDAY, 476 & presnivs,pseudoalt) 477 #endif 478 471 479 c 472 480 c--------- … … 654 662 endif 655 663 656 c======================================================================657 c Lecture du fichier DeltaT658 c======================================================================659 660 c ATTENTION tout ce qui suit est pour un 48*32*50661 662 if (ok_deltatemp) then663 664 print*,'lecture de VenusDeltaT.txt '665 open(99, form = 'formatted', status = 'old', file =666 & 'VenusDeltaT.dat')667 print*,'Ouverture de VenusDeltaT.txt '668 669 DO ilev = 1, klev670 read(99,'(33(1x,e13.6))') (mat_dtemp(ilat,ilev),ilat=1,33)671 print*,'lecture de VenusDeltaT.txt ligne:',ilev672 ENDDO673 674 close(99)675 print*,'FIN lecture de VenusDeltaT.txt ok.'676 677 DO k = 1, klev678 DO i = 1, klon679 ilat=(latitude_deg(i)/5.625) + 17.680 delta_temp(i,k)=mat_dtemp(INT(ilat),k)681 ENDDO682 ENDDO683 684 endif685 686 664 ENDIF ! debut 687 665 c====================================================================== 688 666 c====================================================================== 667 ! ------------------------------------------------------ 668 ! Initializations done at every physical timestep: 669 ! ------------------------------------------------------ 689 670 690 671 c Mettre a zero des variables de sortie (pour securite) … … 744 725 s , fs_bound, fq_bound ) 745 726 END IF 727 728 c==================================================================== 729 c XIOS outputs 730 731 #ifdef CPP_XIOS 732 ! update XIOS time/calendar 733 call update_xios_timestep 734 #endif 746 735 747 736 c==================================================================== … … 878 867 ! Case 3: Full chemistry and/or clouds 879 868 880 if (ok_deltatemp) then881 ! PRINT*,'Def de delta_temp'882 DO k = 1, klev883 DO i = 1, klon884 ilat=(latitude_deg(i)/5.625) + 17.885 ! PRINT*,INT(ilat),latitude_deg(i),mat_dtemp(INT(ilat),k)886 delta_temp(i,k)=mat_dtemp(INT(ilat),k)887 ENDDO888 ENDDO889 890 endif891 892 ! Pas appel concentrations car BUG ... comprend pas893 ! valeur de mmean trop hautes 5,25E+29894 ! call concentrations2(pplay,t_seri,d_t,tr_seri, nqmax)895 896 if (ok_deltatemp) then897 ! Utilisation du champ de temperature modifie898 call phytrac_chimie(899 I debut,900 I gmtime,901 I nqmax,902 I klon,903 I latitude_deg,904 I longitude_deg,905 I nlev,906 I dtime,907 I t_seri+delta_temp,908 I pplay,909 O tr_seri)910 else911 912 869 call phytrac_chimie( 913 870 I debut, … … 922 879 I pplay, 923 880 O tr_seri) 924 endif925 881 926 882 c CALL WriteField_phy('Pression',pplay,nlev) … … 935 891 if (ok_sedim) then 936 892 937 if (ok_deltatemp) then938 ! Utilisation du champ de temperature modifie939 CALL new_cloud_sedim(940 I klon,941 I nlev,942 I dtime,943 I pplay,944 I paprs,945 I t_seri+delta_temp,946 I tr_seri,947 O d_tr_sed,948 O d_tr_ssed,949 I nqmax,950 O Fsedim)951 else952 953 893 CALL new_cloud_sedim( 954 894 I klon, … … 963 903 I nqmax, 964 904 O Fsedim) 965 966 endif967 905 968 906 DO k = 1, klev … … 1742 1680 #endif 1743 1681 1682 #endif 1683 1684 ! XIOS outputs 1685 ! This can be done ANYWHERE in the physics routines ! 1686 1687 #ifdef CPP_XIOS 1688 ! Send fields to XIOS: (NB these fields must also be defined as 1689 ! <field id="..." /> in context_lmdz_physics.xml to be correctly used) 1690 1691 CALL send_xios_field("phis",phis) 1692 cell_area_out(:)=cell_area(:) 1693 if (is_north_pole_phy) cell_area_out(1)=cell_area(1)/nbp_lon 1694 if (is_south_pole_phy) cell_area_out(klon)=cell_area(klon)/nbp_lon 1695 CALL send_xios_field("aire",cell_area_out) 1696 CALL send_xios_field("tsol",ftsol) 1697 CALL send_xios_field("psol",paprs(:,1)) 1698 CALL send_xios_field("ue",ue) 1699 c VENUS: regardee a l envers!!!!!!!!!!!!!!! 1700 CALL send_xios_field("ve",-1.*ve) 1701 1702 CALL send_xios_field("temp",t_seri) 1703 CALL send_xios_field("vitu",u_seri) 1704 c VENUS: regardee a l envers!!!!!!!!!!!!!!! 1705 CALL send_xios_field("vitv",-1.*v_seri) 1706 1744 1707 #endif 1745 1708 -
trunk/LMDZ.VENUS/libf/phyvenus/radlwsw.F
r1639 r1642 401 401 if (isza0.eq.-99) then 402 402 mat0 = indexve(lat) +ips0 403 mat0A = indexve(latA)+ips0A 404 mat0B = indexve(latB)+ips0B 403 if (latA.gt.0) then 404 mat0A = indexve(latA)+ips0A 405 mat0B = indexve(latB)+ips0B 406 endif 405 407 else 406 408 mat0 = indexve(lat) +(isza0 -1)*nbpsve(lat) +ips0 407 mat0A = indexve(latA)+(isza0A-1)*nbpsve(latA)+ips0A 408 mat0B = indexve(latB)+(isza0B-1)*nbpsve(latB)+ips0B 409 if (latA.gt.0) then 410 mat0A = indexve(latA)+(isza0A-1)*nbpsve(latA)+ips0A 411 mat0B = indexve(latB)+(isza0B-1)*nbpsve(latB)+ips0B 412 endif 409 413 endif 410 414 -
trunk/LMDZ.VENUS/libf/phyvenus/xios_output_mod.F90
r1641 r1642 80 80 endif 81 81 82 ! Initialize the XIOS domain cor eesponding to this process:82 ! Initialize the XIOS domain corresponding to this process: 83 83 if (prt_level>=10) write(lunout,*) "initialize_xios_output: call wxios_domain_param" 84 84 CALL wxios_domain_param("dom_glo", is_sequential, nbp_lon, jj_nb, nbp_lon, nbp_lat, & 85 85 1, nbp_lon, ii_begin, ii_end, jj_begin, jj_end, & 86 86 klon_mpi+2*(nbp_lon-1), data_ibegin, data_iend, & 87 lat_reg*(180./pi), lon_reg*(180./pi), & 87 ! VENUS IS SEEN UPSIDE DOWN, SO CENTRAL SYMMETRY TO PUT NORTH UP AGAIN 88 -1.*lat_reg*(180./pi), -1.*lon_reg*(180./pi), & 88 89 is_south_pole_dyn,mpi_rank) 89 90 … … 100 101 start_date=start_date, & 101 102 time_origin=time_origin, & 102 month_lengths=[ 30,30,30,30,30,30,30,30,30,30,30,30])103 month_lengths=[2]) 103 104 104 105 ! 4. Finalize the context:
Note: See TracChangeset
for help on using the changeset viewer.