Changeset 2894
- Timestamp:
- Feb 10, 2023, 5:01:53 PM (23 months ago)
- Location:
- trunk
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.COMMON/libf/evolution/conf_pem.F90
r2893 r2894 15 15 16 16 USE temps_mod_evol, ONLY: year_bp_ini, dt_pem, water_ice_criterion, co2_ice_criterion, ps_criterion, & 17 Max_iter_pem, evol_orbit_pem 17 Max_iter_pem, evol_orbit_pem,var_obl, var_ex, var_lsp 18 18 USE comsoil_h_pem, only: soil_pem,fluxgeo,water_reservoir_nom 19 19 USE adsorption_mod,only: adsorption_pem … … 53 53 print*,'Flux Geothermal is set to',fluxgeo 54 54 55 var_obl = .true. 56 CALL getin('var_obl',var_obl) 57 58 var_ex = .true. 59 CALL getin('var_ex',var_ex) 60 61 var_lsp = .true. 62 CALL getin('var_lsp',var_lsp) 63 55 64 if ((not(soil_pem)).and.adsorption_pem) then 56 65 print*,'Adsorption must be used when soil_pem = T' … … 62 71 call abort_physic(modname,"Soil is not activated but Flux Geo > 0.'",1) 63 72 endif 73 74 if (evol_orbit_pem.and.year_bp_ini.eq.0.) then 75 print*,'You want to follow the file ob_ex_lsp.asc for changing orb parameters,' 76 print*,'but you did not specify from which year to start.' 77 call abort_physic(modname,"evol_orbit_pem=.true. but year_bp_ini=0",1) 78 endif 64 79 65 80 water_reservoir_nom = 1e4 -
trunk/LMDZ.COMMON/libf/evolution/orbit_param_criterion_mod.F90
r2842 r2894 7 7 SUBROUTINE orbit_param_criterion(year_iter_max) 8 8 9 USE temps_mod_evol, ONLY: year_bp_ini, year_PEM 9 USE temps_mod_evol, ONLY: year_bp_ini, year_PEM, var_obl, var_ex, var_lsp 10 10 #ifndef CPP_STD 11 11 USE planete_h, ONLY: e_elips, obliquit, timeperi … … 96 96 !Constant max change case 97 97 98 max_change_obl=0. 0199 max_change_ex=0. 01100 max_change_lsp= 20.98 max_change_obl=0.1 99 max_change_ex=0.1 100 max_change_lsp=40. 101 101 102 102 max_obl=obliquit+max_change_obl … … 111 111 !End Constant max change case 112 112 113 obl_not_found=.TRUE. 114 ex_not_found=.TRUE. 115 lsp_not_found=.TRUE. 113 ! If we do not want some orb parameter to change, they should not be a stopping criterion, 114 ! So the number of iteration corresponding is set to maximum 115 if(.not.var_obl) then 116 obl_not_found=.FALSE. 117 else 118 obl_not_found=.TRUE. 119 endif 120 if(.not.var_ex) then 121 ex_not_found=.FALSE. 122 else 123 ex_not_found=.TRUE. 124 endif 125 if(.not.var_lsp) then 126 lsp_not_found=.FALSE. 127 else 128 lsp_not_found=.TRUE. 129 endif 116 130 117 131 max_obl_iter=999999999999 -
trunk/LMDZ.COMMON/libf/evolution/recomp_orb_param_mod.F90
r2855 r2894 13 13 SUBROUTINE recomp_orb_param(final_iter) 14 14 15 USE temps_mod_evol, ONLY: year_bp_ini, year_PEM 15 USE temps_mod_evol, ONLY: year_bp_ini, year_PEM, var_obl, var_ex, var_lsp 16 16 #ifndef CPP_STD 17 17 USE comconst_mod, ONLY: pi … … 66 66 do ilask=last_ilask,1,-1 67 67 if(yearlask(ilask) .GT.Year) then 68 obliquit=oblask(ilask+1)+(oblask(ilask)-oblask(ilask+1))*(Year-yearlask(ilask+1))/(yearlask(ilask)-yearlask(ilask+1)) 69 e_elips=exlask(ilask+1)+(exlask(ilask)-exlask(ilask+1))*(Year-yearlask(ilask+1))/(yearlask(ilask)-yearlask(ilask+1)) 70 timeperi_ls=lsplask(ilask+1)+(lsplask(ilask)-lsplask(ilask+1))*(Year-yearlask(ilask+1))/(yearlask(ilask)-yearlask(ilask+1)) 68 if(var_obl) then 69 obliquit=oblask(ilask+1)+(oblask(ilask)-oblask(ilask+1))*(Year-yearlask(ilask+1))/(yearlask(ilask)-yearlask(ilask+1)) 70 endif 71 if(var_ex) then 72 e_elips=exlask(ilask+1)+(exlask(ilask)-exlask(ilask+1))*(Year-yearlask(ilask+1))/(yearlask(ilask)-yearlask(ilask+1)) 73 endif 74 if(var_lsp) then 75 timeperi_ls=lsplask(ilask+1)+(lsplask(ilask)-lsplask(ilask+1))*(Year-yearlask(ilask+1))/(yearlask(ilask)-yearlask(ilask+1)) 76 endif 71 77 exit 72 78 endif -
trunk/LMDZ.COMMON/libf/evolution/temps_mod_evol.F90
r2893 r2894 11 11 INTEGER Max_iter_pem ! Maximal number of iteration when converging to a steady state, read in evol.def 12 12 LOGICAL evol_orbit_pem ! True if we want to follow the orbital parameters of ob_ex_lsp.asc, read in evol.def 13 LOGICAL var_obl ! True if we want the PEM to follow ob_ex_lsp.asc parameters for obliquity 14 LOGICAL var_ex ! True if we want the PEM to follow ob_ex_lsp.asc parameters for excenticity 15 LOGICAL var_lsp ! True if we want the PEM to follow ob_ex_lsp.asc parameters for ls perihelie 13 16 14 17 END MODULE temps_mod_evol -
trunk/LMDZ.MARS/README
r2893 r2894 3868 3868 Some cleaning 3869 3869 3870 == 10/02/2023 == RV 3871 New Boolean options for following orbital parameters of ob_ex_lsp.asc: var_obl, var_ex, var_lsp. 3872 If using evol_orbit_pem=true, you can specify which parameter to follow. 3873 True by default: Do you want to change the parameter XXX during the PEM run as prescribed in ob_ex_lsp.asc. 3874 If false, it is set to constant (to the value of the tab_cntrl in the start) 3875
Note: See TracChangeset
for help on using the changeset viewer.