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.
Source Code
function cauchyrnd(median,scale)result(ans)real(8)::ans,median,scale,pif(scale<=0d0)then write(*,*)"CAUCHYRND: Scale parameter must be positive"end ifans=median+scale*tan(PI*(mersenne()-0.5))end function cauchyrnd