diff --git a/src/DOUAR.f90 b/src/DOUAR.f90 index 57f4ea149135357b13cf11f2fde5fe5048363720..88b1d54202b8b1bba45698656fcca2558d9dde7e 100644 --- a/src/DOUAR.f90 +++ b/src/DOUAR.f90 @@ -319,21 +319,21 @@ do while (istep.le.params%nstep) do is=1,params%ns surface0(is)%nsurface=surface(is)%nsurface allocate (surface0(is)%r(surface0(is)%nsurface),stat=threadinfo%err) - call heap (threadinfo,'surface0(is)%r','main',size(surface0(is)%r),'dp',+1) + call heap (threadinfo,'surface0(is)%r','main',size(surface0(is)%r),'dp',+1) allocate (surface0(is)%s(surface0(is)%nsurface),stat=threadinfo%err) - call heap (threadinfo,'surface0(is)%s','main',size(surface0(is)%s),'dp',+1) + call heap (threadinfo,'surface0(is)%s','main',size(surface0(is)%s),'dp',+1) allocate (surface0(is)%x(surface0(is)%nsurface),stat=threadinfo%err) - call heap (threadinfo,'surface0(is)%x','main',size(surface0(is)%x),'dp',+1) + call heap (threadinfo,'surface0(is)%x','main',size(surface0(is)%x),'dp',+1) allocate (surface0(is)%y(surface0(is)%nsurface),stat=threadinfo%err) - call heap (threadinfo,'surface0(is)%y','main',size(surface0(is)%y),'dp',+1) + call heap (threadinfo,'surface0(is)%y','main',size(surface0(is)%y),'dp',+1) allocate (surface0(is)%z(surface0(is)%nsurface),stat=threadinfo%err) - call heap (threadinfo,'surface0(is)%z','main',size(surface0(is)%z),'dp',+1) + call heap (threadinfo,'surface0(is)%z','main',size(surface0(is)%z),'dp',+1) allocate (surface0(is)%xn(surface0(is)%nsurface),stat=threadinfo%err) - call heap (threadinfo,'surface0(is)%xn','main',size(surface0(is)%xn),'dp',+1) + call heap (threadinfo,'surface0(is)%xn','main',size(surface0(is)%xn),'dp',+1) allocate (surface0(is)%yn(surface0(is)%nsurface),stat=threadinfo%err) - call heap (threadinfo,'surface0(is)%yn','main',size(surface0(is)%yn),'dp',+1) + call heap (threadinfo,'surface0(is)%yn','main',size(surface0(is)%yn),'dp',+1) allocate (surface0(is)%zn(surface0(is)%nsurface),stat=threadinfo%err) - call heap (threadinfo,'surface0(is)%zn','main',size(surface0(is)%zn),'dp',+1) + call heap (threadinfo,'surface0(is)%zn','main',size(surface0(is)%zn),'dp',+1) surface0(is)%r=surface(is)%r surface0(is)%s=surface(is)%s surface0(is)%x=surface(is)%x @@ -393,7 +393,7 @@ do while (istep.le.params%nstep) osolve%noctree=params%noctreemax allocate (osolve%octree(osolve%noctree),stat=threadinfo%err) - call heap (threadinfo,'osolve%octree','main',size(osolve%octree),'int',+1) + call heap (threadinfo,'osolve%octree','main',size(osolve%octree),'int',+1) call octree_init (osolve%octree,osolve%noctree) call octree_create_uniform (osolve%octree,osolve%noctree,params%leveluniform_oct) @@ -403,7 +403,7 @@ do while (istep.le.params%nstep) ! refinement/improvement of osolve !------------------------------------------------------------------------| !------------------------------------------------------------------------| - call improve_osolve (osolve,ov,params,threadinfo,istep,iter,total,step,inc, & + call improve_osolve (osolve,ov,params,threadinfo,istep,iter,total,step,inc, & current_level,boxes,cube_faces,increase_current_level ) nleaves_new_mem1=osolve%octree(2) @@ -444,10 +444,10 @@ do while (istep.le.params%nstep) !------------------------------------------------------------------------| !------------------------------------------------------------------------| - ! imbed the surfaces in osolve + ! embed the surfaces in osolve !------------------------------------------------------------------------| !------------------------------------------------------------------------| - call show_time (total,step,inc,1,'Imbed surface in osolve$') + call show_time (total,step,inc,1,'Embed surface in osolve$') do is=1,params%ns write (ic(1:2),'(i2)') is call show_time (total,step,inc,1,'embedding surface '//ic(1:2)//'$') @@ -491,19 +491,19 @@ do while (istep.le.params%nstep) !------------------------------------------------------------------------| !------------------------------------------------------------------------| allocate (osolve%u(osolve%nnode),stat=threadinfo%err) - call heap (threadinfo,'osolve%u','main',size(osolve%u),'dp',+1) + call heap (threadinfo,'osolve%u','main',size(osolve%u),'dp',+1) allocate (osolve%v(osolve%nnode),stat=threadinfo%err) - call heap (threadinfo,'osolve%v','main',size(osolve%v),'dp',+1) + call heap (threadinfo,'osolve%v','main',size(osolve%v),'dp',+1) allocate (osolve%w(osolve%nnode),stat=threadinfo%err) - call heap (threadinfo,'osolve%w','main',size(osolve%w),'dp',+1) + call heap (threadinfo,'osolve%w','main',size(osolve%w),'dp',+1) allocate (osolve%temp(osolve%nnode),stat=threadinfo%err) - call heap (threadinfo,'osolve%temp','main',size(osolve%temp),'dp',+1) + call heap (threadinfo,'osolve%temp','main',size(osolve%temp),'dp',+1) allocate (osolve%pressure(osolve%nleaves),stat=threadinfo%err) - call heap (threadinfo,'osolve%pressure','main',size(osolve%pressure),'dp',+1) + call heap (threadinfo,'osolve%pressure','main',size(osolve%pressure),'dp',+1) allocate (osolve%spressure(osolve%nleaves),stat=threadinfo%err) - call heap (threadinfo,'osolve%spressure','main',size(osolve%spressure),'dp',+1) + call heap (threadinfo,'osolve%spressure','main',size(osolve%spressure),'dp',+1) allocate (osolve%strain(osolve%nnode),stat=threadinfo%err) - call heap (threadinfo,'osolve%strain','main',size(osolve%strain),'dp',+1) + call heap (threadinfo,'osolve%strain','main',size(osolve%strain),'dp',+1) osolve%u = 0.d0 osolve%v = 0.d0 osolve%w = 0.d0 @@ -543,7 +543,7 @@ do while (istep.le.params%nstep) osolve%nface=osolve%nleaves allocate (osolve%iface(9,osolve%nface),stat=threadinfo%err) - call heap (threadinfo,'osolve%iface','main',size(osolve%iface),'int',+1) + call heap (threadinfo,'osolve%iface','main',size(osolve%iface),'int',+1) call octree_find_bad_faces (osolve%octree,osolve%noctree, & osolve%iface,osolve%nface, & @@ -562,17 +562,17 @@ do while (istep.le.params%nstep) call show_time (total,step,inc,1,'Find void$') allocate (vo%node(osolve%nnode),stat=threadinfo%err) - call heap (threadinfo,'vo%node','main',size(vo%node),'int',+1) + call heap (threadinfo,'vo%node','main',size(vo%node),'int',+1) allocate (vo%leaf(osolve%nnode),stat=threadinfo%err) - call heap (threadinfo,'vo%leaf','main',size(vo%leaf),'int',+1) + call heap (threadinfo,'vo%leaf','main',size(vo%leaf),'int',+1) allocate (vo%face(osolve%nface),stat=threadinfo%err) - call heap (threadinfo,'vo%face','main',size(vo%face),'int',+1) + call heap (threadinfo,'vo%face','main',size(vo%face),'int',+1) allocate (vo%rtf(osolve%nnode),stat=threadinfo%err) - call heap (threadinfo,'vo%rtf','main',size(vo%rtf),'int',+1) + call heap (threadinfo,'vo%rtf','main',size(vo%rtf),'int',+1) allocate (vo%ftr(osolve%nnode),stat=threadinfo%err) - call heap (threadinfo,'vo%ftr','main',size(vo%ftr),'int',+1) + call heap (threadinfo,'vo%ftr','main',size(vo%ftr),'int',+1) allocate (vo%influid(osolve%nnode),stat=threadinfo%err) - call heap (threadinfo,'vo%influid','main',size(vo%influid),'bool',+1) + call heap (threadinfo,'vo%influid','main',size(vo%influid),'bool',+1) call find_void_nodes (params,osolve,vo,istep,ov,threadinfo) @@ -583,9 +583,9 @@ do while (istep.le.params%nstep) !------------------------------------------------------------------------| call show_time (total,step,inc,1,'Define boundary conditions$') allocate (osolve%kfix(osolve%nnode*3),stat=threadinfo%err) - call heap (threadinfo,'osolve%kfix','main',size(osolve%kfix),'int',+1) + call heap (threadinfo,'osolve%kfix','main',size(osolve%kfix),'int',+1) allocate (osolve%kfixt(osolve%nnode),stat=threadinfo%err) - call heap (threadinfo,'osolve%kfixt','main',size(osolve%kfixt),'int',+1) + call heap (threadinfo,'osolve%kfixt','main',size(osolve%kfixt),'int',+1) call define_bc (params,osolve,vo,zi) @@ -635,21 +635,21 @@ do while (istep.le.params%nstep) !------------------------------------------------------------------------| allocate (osolve%eviscosity(osolve%nleaves),stat=threadinfo%err) - call heap (threadinfo,'osolve%eviscosity','main',size(osolve%eviscosity),'dp',+1) + call heap (threadinfo,'osolve%eviscosity','main',size(osolve%eviscosity),'dp',+1) allocate (osolve%q(osolve%nleaves),stat=threadinfo%err) - call heap (threadinfo,'osolve%q','main',size(osolve%q),'dp',+1) + call heap (threadinfo,'osolve%q','main',size(osolve%q),'dp',+1) allocate (osolve%crit(osolve%nleaves),stat=threadinfo%err) - call heap (threadinfo,'osolve%crit','main',size(osolve%crit),'dp',+1) + call heap (threadinfo,'osolve%crit','main',size(osolve%crit),'dp',+1) allocate (osolve%e2d(osolve%nleaves),stat=threadinfo%err) - call heap (threadinfo,'osolve%e2d','main',size(osolve%e2d),'dp',+1) + call heap (threadinfo,'osolve%e2d','main',size(osolve%e2d),'dp',+1) allocate (osolve%e3d(osolve%nleaves),stat=threadinfo%err) - call heap (threadinfo,'osolve%e3d','main',size(osolve%e3d),'dp',+1) + call heap (threadinfo,'osolve%e3d','main',size(osolve%e3d),'dp',+1) allocate (osolve%lode(osolve%nleaves),stat=threadinfo%err) - call heap (threadinfo,'osolve%lode','main',size(osolve%lode),'dp',+1) + call heap (threadinfo,'osolve%lode','main',size(osolve%lode),'dp',+1) allocate (osolve%is_plastic(osolve%nleaves),stat=threadinfo%err) - call heap (threadinfo,'osolve%is_plastic','main',size(osolve%is_plastic),'bool',+1) + call heap (threadinfo,'osolve%is_plastic','main',size(osolve%is_plastic),'bool',+1) allocate (weightel(osolve%nleaves)) - call heap (threadinfo,'weightel','main',size(weightel),'bool',+1) + call heap (threadinfo,'weightel','main',size(weightel),'bool',+1) !-------------------------------------------------------------------------------------- !-------------------------------------------------------------------------------------- @@ -708,6 +708,7 @@ do while (istep.le.params%nstep) call solve_with_pwssmp (n,nz_loc,n_iproc,n_iproc_st,n_iproc_end,ia,ja, & ldb,nrhs,avals,b,params,osolve,ov,vo,threadinfo,& ndof,istep,iter,iter_nl) + !-------------------------------------------------------------------------------------- !-------------------------------------------------------------------------------------- ! calculate pressures @@ -916,17 +917,17 @@ do while (istep.le.params%nstep) olsf%noctree=ov%noctree allocate (olsf%octree(olsf%noctree),stat=threadinfo%err) - call heap (threadinfo,'olsf%octree','main',size(olsf%octree),'int',+1) + call heap (threadinfo,'olsf%octree','main',size(olsf%octree),'int',+1) allocate (olsf%x(olsf%nnode),stat=threadinfo%err) - call heap (threadinfo,'olsf%x','main',size(olsf%x),'dp',+1) + call heap (threadinfo,'olsf%x','main',size(olsf%x),'dp',+1) allocate (olsf%y(olsf%nnode),stat=threadinfo%err) - call heap (threadinfo,'olsf%y','main',size(olsf%y),'dp',+1) + call heap (threadinfo,'olsf%y','main',size(olsf%y),'dp',+1) allocate (olsf%z(olsf%nnode),stat=threadinfo%err) - call heap (threadinfo,'olsf%z','main',size(olsf%z),'dp',+1) + call heap (threadinfo,'olsf%z','main',size(olsf%z),'dp',+1) allocate (olsf%lsf(olsf%nnode),stat=threadinfo%err) - call heap (threadinfo,'olsf%lsf','main',size(olsf%lsf),'dp',+1) + call heap (threadinfo,'olsf%lsf','main',size(olsf%lsf),'dp',+1) allocate (olsf%icon(params%mpe,olsf%nleaves),stat=threadinfo%err) - call heap (threadinfo,'olsf%icon','main',size(olsf%icon),'int',+1) + call heap (threadinfo,'olsf%icon','main',size(olsf%icon),'int',+1) olsf%octree(1:olsf%noctree)=ov%octree(1:ov%noctree) olsf%x(1:olsf%nnode)=ov%x(1:ov%nnode) @@ -1109,6 +1110,7 @@ do while (istep.le.params%nstep) call solve_with_pwgsmp (n,nz_loc,n_iproc,n_iproc_st,n_iproc_end,ia,ja,ldb,& nrhs,avals,b,params,osolve,ov,vo,threadinfo,ndoft,& istep,iter,iter_nl) + !-------------------------------------------------------------------------! !-------------------------------------------------------------------------! ! deallocate memory used by the solver and terminates the solver's job @@ -1148,7 +1150,7 @@ do while (istep.le.params%nstep) allocate (olsf%z(olsf%nnode),stat=threadinfo%err) ; call heap (threadinfo,'olsf%z','main',size(olsf%z),'dp',+1) allocate (olsf%lsf(olsf%nnode),stat=threadinfo%err) ; call heap (threadinfo,'olsf%lsf','main',size(olsf%lsf),'dp',+1) allocate (olsf%icon(params%mpe,olsf%nleaves),stat=threadinfo%err) - call heap (threadinfo,'olsf%icon','main',size(olsf%icon),'int',+1) + call heap (threadinfo,'olsf%icon','main',size(olsf%icon),'int',+1) olsf%octree(1:olsf%noctree)=ov%octree(1:ov%noctree) olsf%x(1:olsf%nnode)=ov%x(1:ov%nnode)