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.
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 output_individual()use mod_global_parameterscharacter(len=std_len)::filenameinteger::ipart,iipart,ipelogical::file_existsdo iipart=1,nparticles_on_mypeipart=particles_on_mype(iipart)! should the particle be dumped?if(particle(ipart)%self%follow)then write(filename,"(a,a,i6.6,a)")trim(base_filename),'_particle_',&particle(ipart)%self%index,'.csv'inquire(file=filename,exist=file_exists)! Create empty file and write header on first iteration, or when the! file does not exist yetif(it_particles==0.or..not.file_exists)then open(unit=unitparticles,file=filename)write(unitparticles,"(a)")trim(csv_header)else open(unit=unitparticles,file=filename,access='sequential',&position='append')end if call output_particle(particle(ipart)%self,&particle(ipart)%payload(1:npayload),mype,unitparticles)close(unitparticles)end if end do end subroutine output_individual