Nodes of different colours represent the following:
Solid arrows point from a submodule to the (sub)module which it is
descended from. Dashed arrows point from a module or program unit to
modules which it uses.
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 sort(non_sorted,sorted)!================================================!use w90_constants,only:dpimplicit nonereal(kind=dp),intent(inout)::non_sorted(:,:)real(kind=dp),intent(out)::sorted(:,:)integer,dimension(1)::min_locinteger::num_col,inum_col=size(non_sorted,2)do i=1,num_col!look for the location of the minimum value of the coordinates in non_sortedmin_loc=minloc(non_sorted(2,:))!now the index in the first row of sorted is the index non_sorted(1,min_loc)sorted(1,i)=non_sorted(1,min_loc(1))!here is the corresponding coordinatesorted(2,i)=non_sorted(2,min_loc(1))!here one replaces the minimum coordinate with 10**10 such that this value!will not be picked-up again by minlocnon_sorted(2,min_loc(1))=10.0**10end do return end subroutine sort