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.
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
subroutine build_panel_duffy_quadrature(geometry,order,plan)type(panel_geometry_type),intent(in)::geometryinteger(i32),intent(in)::ordertype(panel_quadrature_plan_type),intent(out)::planreal(dp),allocatable::node(:),weight(:)real(dp)::edge1(3),edge2(3),direction(3),u,vinteger::iu,iv,pointcall gauss_legendre_unit(order,node,weight)plan%npoint=order*orderallocate(plan%position(3,plan%npoint),plan%weight(plan%npoint))edge1=geometry%vertex(:,2)-geometry%vertex(:,1)edge2=geometry%vertex(:,3)-geometry%vertex(:,1)point=0do iu=1,orderu=node(iu)do iv=1,orderv=node(iv)point=point+1direction=(1.0_dp-v)*edge1+v*edge2plan%position(:,point)=geometry%vertex(:,1)+u*directionplan%weight(point)=2.0_dp*geometry%area*u*weight(iu)*weight(iv)end do end do end subroutine build_panel_duffy_quadrature