diff --git a/src/diagnose.F90 b/src/diagnose.F90 index f3f286152acc7647ad98f57e7fac8cc7381dbbfb..47f83a16178768af567f94e7d84dde9c4ca4f1bf 100644 --- a/src/diagnose.F90 +++ b/src/diagnose.F90 @@ -43,6 +43,7 @@ SUBROUTINE diagnose(kstep) CALL creatg(fidrst, '/Basic', 'Basic data') CALL creatg(fidrst, '/Basic/moments_e', 'electron moments') CALL creatg(fidrst, '/Basic/moments_i', 'ion moments') + CALL creatg(fidrst, '/Basic/phi', 'ES potential') IF (my_id .EQ. 0) WRITE(*,'(3x,a,a)') TRIM(rstfile), ' created' CALL flush(6) @@ -442,10 +443,10 @@ SUBROUTINE checkpoint_save(cp_step) WRITE(dset_name, "(A, '/', i6.6)") "/Basic/moments_e", cp_step IF (num_procs .EQ. 1) THEN CALL putarr(fidrst, dset_name, moments_e(ips_e:ipe_e,ijs_e:ije_e,& - ikrs:ikre,ikzs:ikze,updatetlevel), ionode=0) + ikrs:ikre,ikzs:ikze,1), ionode=0) ELSE CALL putarr(fidrst, dset_name, moments_e(ips_e:ipe_e,ijs_e:ije_e,& - ikrs:ikre,ikzs:ikze,updatetlevel), pardim=3) + ikrs:ikre,ikzs:ikze,1), pardim=3) ENDIF CALL attach(fidrst, dset_name, 'cstep', cstep) @@ -458,10 +459,25 @@ SUBROUTINE checkpoint_save(cp_step) WRITE(dset_name, "(A, '/', i6.6)") "/Basic/moments_i", cp_step IF (num_procs .EQ. 1) THEN CALL putarr(fidrst, dset_name, moments_i(ips_i:ipe_i,ijs_i:ije_i,& - ikrs:ikre,ikzs:ikze,updatetlevel), ionode=0) + ikrs:ikre,ikzs:ikze,1), ionode=0) ELSE CALL putarr(fidrst, dset_name, moments_i(ips_i:ipe_i,ijs_i:ije_i,& - ikrs:ikre,ikzs:ikze,updatetlevel), pardim=3) + ikrs:ikre,ikzs:ikze,1), pardim=3) + ENDIF + + CALL attach(fidrst, dset_name, 'cstep', cstep) + CALL attach(fidrst, dset_name, 'time', time) + CALL attach(fidrst, dset_name, 'jobnum', jobnum) + CALL attach(fidrst, dset_name, 'dt', dt) + CALL attach(fidrst, dset_name, 'iframe2d', iframe2d) + CALL attach(fidrst, dset_name, 'iframe5d', iframe5d) + + ! Write state of system to restart file + WRITE(dset_name, "(A, '/', i6.6)") "/Basic/phi", cp_step + IF (num_procs .EQ. 1) THEN + CALL putarr(fidrst, dset_name, phi(ikrs:ikre,ikzs:ikze), ionode=0) + ELSE + CALL putarr(fidrst, dset_name, phi(ikrs:ikre,ikzs:ikze), pardim=1) ENDIF CALL attach(fidrst, dset_name, 'cstep', cstep) diff --git a/src/inital.F90 b/src/inital.F90 index 5ad14fcd8f61b041d1da4fed2b3dc72fe3429963..a5ad1edb2243eee3d0e7f62c6e2e4beed2ef6006 100644 --- a/src/inital.F90 +++ b/src/inital.F90 @@ -21,10 +21,11 @@ SUBROUTINE inital CALL load_cp ELSE CALL init_moments + !!!!!! Set phi !!!!!! + IF (my_id .EQ. 1) WRITE(*,*) 'Init phi' + CALL poisson ENDIF - !!!!!! Set phi !!!!!! - IF (my_id .EQ. 1) WRITE(*,*) 'Init phi' - CALL poisson + !!!!!! Set Sepj, Sipj and dnjs coeff table !!!!!! IF ( NON_LIN .OR. (A0KH .NE. 0)) THEN; @@ -124,7 +125,7 @@ SUBROUTINE load_cp WRITE(rstfile,'(a,a1,i2.2,a3)') TRIM(rstfile0),'_',job2load,'.h5' - WRITE(*,'(3x,a)') "Resume from previous run" + IF (my_id .EQ. 0) WRITE(*,'(3x,a)') "Resume from previous run" CALL openf(rstfile, fidrst,mpicomm=MPI_COMM_WORLD) @@ -139,9 +140,13 @@ SUBROUTINE load_cp WRITE(dset_name, "(A, '/', i6.6)") "/Basic/moments_i", n_ ! Read state of system from restart file - CALL getarr(fidrst, dset_name, moments_i(ips_i:ipe_i,ijs_i:ije_i,ikrs:ikre,ikzs:ikze,updatetlevel),pardim=3) - CALL getarr(fidrst, dset_name, moments_e(ips_e:ipe_e,ijs_e:ije_e,ikrs:ikre,ikzs:ikze,updatetlevel),pardim=3) - + WRITE(dset_name, "(A, '/', i6.6)") "/Basic/moments_i", n_ + CALL getarr(fidrst, dset_name, moments_i(ips_i:ipe_i,ijs_i:ije_i,ikrs:ikre,ikzs:ikze,1),pardim=3) + WRITE(dset_name, "(A, '/', i6.6)") "/Basic/moments_e", n_ + CALL getarr(fidrst, dset_name, moments_e(ips_e:ipe_e,ijs_e:ije_e,ikrs:ikre,ikzs:ikze,1),pardim=3) + WRITE(dset_name, "(A, '/', i6.6)") "/Basic/phi", n_ + CALL getarr(fidrst, dset_name, phi(ikrs:ikre,ikzs:ikze),pardim=1) + ! Read time dependent attributes CALL getatt(fidrst, dset_name, 'cstep', cstep) CALL getatt(fidrst, dset_name, 'time', time) @@ -153,7 +158,7 @@ SUBROUTINE load_cp CALL closef(fidrst) - WRITE(*,'(3x,a)') "Reading from restart file "//TRIM(rstfile)//" completed!" + IF (my_id .EQ. 0) WRITE(*,'(3x,a)') "Reading from restart file "//TRIM(rstfile)//" completed!" END SUBROUTINE load_cp !******************************************************************************!