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.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
Source Code
function Calculate_SOR_preconditioner(A,omega,alpha)result(L)real(dp),dimension(:,:),intent(in)::Areal(dp),intent(in)::omega,alphareal(dp),dimension(size(A,1),size(A,2))::Linteger::N,iN=size(A,1)L=0.d0if(any(Diag(A)<TOL_CONVERGENCE_dp))stop"ERROR :: Zero diagonal in SOR preconditioner"do i=1,size(A,1)L(i,i)=1.d0/omega*A(i,i)L(i,1:i-1)=A(i,1:i-1)end doL=alpha*Lend function Calculate_SOR_preconditioner