- Timestamp:
- Feb 4, 2011, 1:46:39 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/mesoscale/LMD_MM_MARS/SRC/WRFV2/phys/module_lmd_driver.F
r54 r55 176 176 #ifdef NEWPHYS 177 177 REAL,DIMENSION(:,:),ALLOCATABLE :: wisoil,wdsoil 178 CHARACTER*20,DIMENSION(:),ALLOCATABLE :: wtnom 178 179 #endif 179 180 ! ---------- … … 189 190 REAL, DIMENSION(:), ALLOCATABLE :: & 190 191 dz8w_prof,p8w_prof,p_prof,t_prof,t8w_prof, & 191 u_prof,v_prof,z_prof, & 192 u_prof,v_prof,z_prof 193 !! pi_prof, rho_prof, th_prof, & 194 #ifdef NEWPHYS 195 REAL, DIMENSION(:,:), ALLOCATABLE :: q_prof 196 #else 197 REAL, DIMENSION(:), ALLOCATABLE :: & 192 198 water_vapor_prof, water_ice_prof 193 !! pi_prof, rho_prof, th_prof, & 199 #endif 200 194 201 195 202 ! Additional control variables … … 553 560 !ALLOCATE(rho_prof(nlayer)) 554 561 !ALLOCATE(pi_prof(nlayer)) 562 #ifdef NEWPHYS 563 ALLOCATE(q_prof(nlayer,nq)) 564 ALLOCATE(wtnom(nq)) 565 #else 555 566 ALLOCATE(water_vapor_prof(nlayer)) 556 567 ALLOCATE(water_ice_prof(nlayer)) 557 568 #endif 558 569 559 570 !!!!!!!!!!!!!!!!!!!!!!!!!!!! … … 562 573 !!!!!!!!!!!!!!!!!!!!!!!!!!!! 563 574 !!!!!!!!!!!!!!!!!!!!!!!!!!!! 564 575 #ifdef NEWPHYS 576 !!! name of tracers -- see Registry.EM for order and traceur.def for names 577 SELECT CASE (MARS_MODE) 578 CASE(0) !! NO TRACERS (mars=0) 579 wtnom(nq) = 'co2' 580 CASE(11) !! newwater mars==11 scalar:qh2o,qh2o_ice,qdust,qdust_number,qco2 581 wtnom(nq) = 'co2' 582 wtnom(1) = 'h2o_vap' 583 wtnom(2) = 'h2o_ice' 584 wtnom(3) = 'dust_mass' 585 wtnom(4) = 'dust_number' 586 END SELECT 587 #endif 565 588 566 589 DO j = jps,jpe … … 595 618 ! specific treatment for tracers ! 596 619 !--------------------------------! 620 #ifdef NEWPHYS 621 q_prof(:,1:nq) = SCALAR(i,kps:kpe,j,2:nq+1) !! the names were set above !! one dummy tracer in WRF 622 q_prof(:,nq) = 0.95 !! cas du CO2 !! TEMPORAIRE 623 #else 597 624 SELECT CASE (MARS_MODE) 598 625 CASE(0) !! NO TRACERS (mars=0) … … 606 633 water_ice_prof(:) = 0. 607 634 END SELECT 635 #endif 608 636 609 637 !!**********************************************************!! … … 764 792 PRINT *,'isoil ',isoil_val 765 793 PRINT *,'dsoil ',dsoil_val 794 PRINT *,'q_prof ',q_prof 766 795 #endif 767 796 ENDIF … … 833 862 834 863 !---------! 835 ! Tracers ! 864 ! Tracers ! 836 865 !---------! 866 #ifdef NEWPHYS 867 pq(subs,:,:) = q_prof(:,:) !! traceurs generiques, seuls noms sont specifiques 868 #else 837 869 SELECT CASE (MARS_MODE) 838 870 CASE(0) !! NO TRACERS (mars=0) … … 844 876 pq(subs,:,nq) = water_vapor_prof(:) !! NB: which is 0, actually (see above) 845 877 END SELECT 846 878 #endif 847 879 ENDDO 848 880 ENDDO … … 865 897 DEALLOCATE(u_prof) 866 898 DEALLOCATE(v_prof) 899 #ifdef NEWPHYS 900 DEALLOCATE(q_prof) 901 #else 867 902 DEALLOCATE(water_vapor_prof) 868 903 DEALLOCATE(water_ice_prof) 904 #endif 869 905 !!! no use 870 906 !DEALLOCATE(pi_prof) … … 944 980 DEALLOCATE(wisoil) 945 981 DEALLOCATE(wdsoil) 982 DEALLOCATE(wtnom) 946 983 #endif 947 984 … … 1019 1056 1020 1057 !---------! 1021 ! Tracers ! 1058 ! Tracers ! 1022 1059 !---------! 1060 #ifdef NEWPHYS 1061 SCALAR(i,kps:kpe,j,1)=0. 1062 SCALAR(i,kps:kpe,j,2:nq+1)=SCALAR(i,kps:kpe,j,2:nq+1)+pdq(subs,kps:kpe,1:nq) 1063 #else 1023 1064 SELECT CASE (MARS_MODE) 1024 1065 CASE(0) … … 1032 1073 !!! Dust 1033 1074 SCALAR(i,kps:kpe,j,2)=SCALAR(i,kps:kpe,j,2)+pdq(subs,kps:kpe,nq) 1075 !!CASE(11) !!! 1034 1076 END SELECT 1035 1077 #endif 1036 1078 !!TODO: check if adding the whole tendency once, and set the 1037 1079 !!TODO: following tendencies to 0 until physics is called again
Note: See TracChangeset
for help on using the changeset viewer.