Changeset 8227


Ignore:
Timestamp:
2023-10-11T15:11:36+02:00 (7 months ago)
Author:
yann.meurdesoif
Message:

New version of routing simple => become routing_native ; after validation routing_simple will be supress

  • more robust routing scheme on native grid
  • rearchitecturing of routing by spliting routing sub-process into separate file/module => smaller file
  • works on global as well on regional (orchidee) grid.
  • works on standard 50km routing grid and highres routing MERIT grid (1-2km), for regional studies
  • integrate irrigation old scheme et new scheme (pedro arboleda)
  • more water conservative (1e-16 Vs 1e-7 relative for simple routing)
  • To be tested : ICOLMDZOR grid and ICOLAMDZ-LAM grid that are expeted to work also.

It is a first guess, not the definitive native routing package that will continue to evolve.
No side effect is expected on other configurations since it is just some files adding.
Native routing is activated using the run.def key :
ROUTING_METHOD=native

YM

Location:
branches/ORCHIDEE_2_2/ORCHIDEE/src_sechiba
Files:
6 added
1 edited

Legend:

Unmodified
Added
Removed
  • branches/ORCHIDEE_2_2/ORCHIDEE/src_sechiba/routing_wrapper.f90

    r7710 r8227  
    3535  USE routing_highres 
    3636  USE routing_simple 
     37  USE routing_native_mod 
    3738  USE constantes_soil 
    3839 
     
    7677    ELSEIF(routing_method=='simple') THEN   
    7778       CALL routing_simple_xios_initialize 
     79    ELSEIF(routing_method=='native') THEN 
     80       CALL routing_native_xios_initialize 
    7881    ENDIF 
    7982 
     
    179182                                          returnflow,  reinfiltration, irrigation, riverflow, & 
    180183                                          coastalflow, flood_frac,     flood_res ) 
     184 
     185       riverflow(:) = zero 
     186       coastalflow(:) = zero 
     187       returnflow(:) = zero 
     188       reinfiltration(:) = zero 
     189       irrigation(:) = zero 
     190       flood_frac(:) = zero 
     191       flood_res(:) = zero 
     192    
     193    ELSE IF(routing_method== 'native') THEN 
     194 
     195       CALL routing_native_initialize(    kjit,        nbpt,           index,                 & 
     196                                          rest_id,     hist_id,        hist2_id,   lalo,      & 
     197                                          neighbours,  resolution,     contfrac,   stempdiag, & 
     198                                          returnflow,  reinfiltration, irrigation, riverflow, & 
     199                                          coastalflow, flood_frac,     flood_res , irrigated_next) 
    181200 
    182201       riverflow(:) = zero 
     
    284303            drainage, transpot, precip_rain, humrel, k_litt, flood_frac, flood_res, & 
    285304            stempdiag, reinf_slope, returnflow, reinfiltration, irrigation, riverflow, coastalflow, & 
    286             rest_id, hist_id, hist2_id) 
     305            rest_id, hist_id, hist2_id)  
     306 
     307    ELSE IF(routing_method=='native') THEN 
     308 
     309       CALL routing_native_main (kjit, nbpt, index, & 
     310            lalo, neighbours, resolution, contfrac, totfrac_nobio, veget_max, floodout, runoff, & 
     311            drainage, transpot, precip_rain, humrel, k_litt, flood_frac, flood_res, & 
     312            stempdiag, reinf_slope, returnflow, reinfiltration, irrigation, riverflow, coastalflow, & 
     313            rest_id, hist_id, hist2_id, & 
     314            soiltile, root_deficit, irrigated_next, irrig_frac, fraction_aeirrig_sw)  
    287315    ENDIF 
    288316 
     
    331359       CALL routing_simple_finalize( kjit, nbpt, rest_id, flood_frac, flood_res ) 
    332360 
     361    ELSE IF(routing_method=='native') THEN 
     362 
     363       CALL routing_native_finalize( kjit, nbpt, rest_id, flood_frac, flood_res ) 
     364 
    333365    ENDIF 
    334366 
     
    363395 
    364396       CALL routing_simple_clear 
    365  
     397     
     398    ELSE IF(routing_method=='native') THEN 
     399 
     400       CALL routing_native_clear 
    366401    ENDIF 
    367402 
Note: See TracChangeset for help on using the changeset viewer.