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
real(dp)function zhao_photo_emit_current_density(branch,phi0_v,phi_m_v,photo_charge_c,p)result(current_a_m2)character(len=1),intent(in)::branchreal(dp),intent(in)::phi0_v,phi_m_v,photo_charge_ctype(zhao_params_type),intent(in)::pselect case(branch)case('A')current_a_m2=abs(photo_charge_c)*p%n_phe0_m3*exp((phi_m_v-phi0_v)/p%t_phe_ev)*p%v_phe_th_mps/(2.0d0*sqrt(pi))case('B')current_a_m2=abs(photo_charge_c)*p%n_phe0_m3*exp(-phi0_v/p%t_phe_ev)*p%v_phe_th_mps/(2.0d0*sqrt(pi))case('C')current_a_m2=abs(photo_charge_c)*p%n_phe0_m3*p%v_phe_th_mps/(2.0d0*sqrt(pi))case defaulterror stop'Unexpected Zhao sheath branch.'end select end function zhao_photo_emit_current_density