Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
real(dp)function wam_correct_irrigationdemand(pwu,plantdemand)TYPE(TWaterUser),POINTER::pWUreal(dp),intent(in)::plantDemandreal(dp)::irr_fac=0.! To satisfy the required plant demand, the actual demand will be higher due to irrigation losses.! This depends on irrigation practices. These losses are incorporated here.if(pWU%irr_practice==1)irr_fac=1./wam_eff_sprinkler! sprinkler irrigationif(pWU%irr_practice==2)irr_fac=1./wam_eff_drip! drip irrigationwam_correct_irrigationDemand=plantDemand*irr_fac*pWU%irr_deficit_fac*(1./pWU%tr_eff)! m3 / send function wam_correct_irrigationDemand