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.
subroutine erosion_allocate(mb,mcrdb,meap)integer,intent(in)::mb,mcrdb,meap! NOTE: Something during the init process sets `mch = mb`, so use mb as we! we have reordered some intialization code! allocate(chxk(mch))allocate(chc(mb))allocate(chxk(mb))allocate(cklsp(mb,meap))allocate(css(mb))allocate(cvm(mcrdb))allocate(ecp(mb))allocate(parsz(5,mb))allocate(pct(5,mb))allocate(sl(mb))allocate(yone(mb))allocate(yphe(mb))chc=1.0*chcc0chxk=0.28*chxkc0cklsp=0.css=0.5cvm=0.ecp=0.5parsz=0.pct=0.sl=0.yone=0.yphe=0.end subroutine erosion_allocate