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
subroutine links_FSlink_update(me,dt)type(FSlink_t),intent(inout)::mereal(dp),intent(in)::dtinteger::i,iireal(dp)::VarcentSdo i=1,me%sizeNodesif(me%lk(2,i)%p%typeS==trim("mesh2D"))then do ii=1,me%nb_2D_Ports(i)me%MatrixPS_2D(1,ii,i)=-dt*me%DerSrcP_SedT2D(ii,i)me%MatrixPS_2D(2,ii,i)=-dt*me%DerSrcP_SrdT2D(ii,i)VarcentS=1.0_dp/(me%lk(1+ii,i)%p%rhoS*me%lk(1+ii,i)%p%cpS)me%MatrixSP_2D(:,ii,i)=dt/me%lk(1+ii,i)%p%SurfS*VarcentS*me%derFlx2DdUi(:,ii,i)enddo elseme%MatrixPS(1,i)=-dt*me%DerSrcP_SedT(i)me%MatrixPS(2,i)=-dt*me%DerSrcP_SrdT(i)me%MatrixSP(:,i)=-dt*me%DerSrcSdUi(:,i)endif enddoend subroutine links_FSlink_update