From 6ca9faf50d30e48b4f5068611070b7db528de9a2 Mon Sep 17 00:00:00 2001 From: kbk Date: Fri, 17 Mar 2006 17:19:52 +0000 Subject: [PATCH] simulation with hotstart identical to continuous run - checked with md5sum --- src/3d/variables_3d.F90 | 7 ++++++- src/getm/initialise.F90 | 36 ++++++++++-------------------------- src/output/output.F90 | 30 ++++++++++++++++++++---------- 3 files changed, 36 insertions(+), 37 deletions(-) diff --git a/src/3d/variables_3d.F90 b/src/3d/variables_3d.F90 index bc82117b..10885b3e 100644 --- a/src/3d/variables_3d.F90 +++ b/src/3d/variables_3d.F90 @@ -1,4 +1,4 @@ -!$Id: variables_3d.F90,v 1.10 2006-03-01 15:54:08 kbk Exp $ +!$Id: variables_3d.F90,v 1.11 2006-03-17 17:19:54 kbk Exp $ #include "cppdefs.h" !----------------------------------------------------------------------- !BOP @@ -199,6 +199,11 @@ huadv = _ZERO_ ; hvadv = _ZERO_ #endif +#ifndef NO_BAROCLINIC + idpdx=_ZERO_ + idpdy=_ZERO_ +#endif + adv_schemes(1) = "3D first-order upstream advection" adv_schemes(2) = "upstream advection (first-order, monotone)" adv_schemes(3) = "P2-PDM advection (third-order, non-monotone)" diff --git a/src/getm/initialise.F90 b/src/getm/initialise.F90 index b69f6125..a1572ad2 100644 --- a/src/getm/initialise.F90 +++ b/src/getm/initialise.F90 @@ -1,4 +1,4 @@ -!$Id: initialise.F90,v 1.12 2006-03-17 11:06:32 kbk Exp $ +!$Id: initialise.F90,v 1.13 2006-03-17 17:19:52 kbk Exp $ #include "cppdefs.h" !----------------------------------------------------------------------- !BOP @@ -22,6 +22,9 @@ ! Original author(s): Karsten Bolding & Hans Burchard ! ! $Log: initialise.F90,v $ +! Revision 1.13 2006-03-17 17:19:52 kbk +! simulation with hotstart identical to continuous run - checked with md5sum +! ! Revision 1.12 2006-03-17 11:06:32 kbk ! cleaner inclusion of SPM module ! @@ -115,6 +118,7 @@ use time, only: start,timestr,timestep use m2d, only: init_2d,z,zu,zv #ifndef NO_3D + use m2d, only: Uint,Vint use m3d, only: cord_relax,init_3d,ssen,ssun,ssvn #ifndef NO_BAROCLINIC use m3d, only: T @@ -307,13 +311,13 @@ end if hot_in = trim(out_dir) //'/'// 'restart' // trim(buf) call restart_file(READING,trim(hot_in),MinN,runtype) -#ifndef NO_3D - if (runtype .gt. 1) then - call start_macro() + call depth_update + if (runtype .ge. 2) then call coordinates(vert_cord,cord_relax,maxdepth) + Uint=_ZERO_ + Vint=_ZERO_ end if -#endif - call depth_update + #ifndef NO_BAROCLINIC if (runtype .ge. 3) call do_eqstate() #endif @@ -323,26 +327,6 @@ MinN = MinN+1 end if -#ifndef NO_3D - if (runtype .ge. 2) then - do j=jjmin-HALO,jjmax+HALO - do i=iimin-HALO,iimax+HALO - ssen(i,j)=z(i,j) - end do - end do - do j=jjmin-HALO,jjmax+HALO - do i=iimin-HALO,iimax+HALO-1 - ssun(i,j)=zu(i,j) - end do - end do - do j=jjmin-HALO,jjmax+HALO-1 - do i=iimin-HALO,iimax+HALO - ssvn(i,j)=zv(i,j) - end do - end do - end if -#endif - call init_input(input_dir,MinN) if(runtype .le. 2) then diff --git a/src/output/output.F90 b/src/output/output.F90 index 200a6ad4..0affdcc4 100644 --- a/src/output/output.F90 +++ b/src/output/output.F90 @@ -1,4 +1,4 @@ -!$Id: output.F90,v 1.14 2006-03-17 11:06:33 kbk Exp $ +!$Id: output.F90,v 1.15 2006-03-17 17:19:54 kbk Exp $ #include "cppdefs.h" !----------------------------------------------------------------------- !BOP @@ -54,6 +54,9 @@ ! Original author(s): Karsten Bolding & Hans Burchard ! ! $Log: output.F90,v $ +! Revision 1.15 2006-03-17 17:19:54 kbk +! simulation with hotstart identical to continuous run - checked with md5sum +! ! Revision 1.14 2006-03-17 11:06:33 kbk ! cleaner inclusion of SPM module ! @@ -359,9 +362,13 @@ use variables_2d, only: z,zo use variables_2d, only: U,fU,zu,zub,SlUx,Slru use variables_2d, only: V,fV,zv,zvb,SlVx,Slrv - use variables_2d, only: Uint,Vint + use variables_2d, only: Uinto,Vinto #ifndef NO_3D - use variables_3d, only: uu,vv,tke,eps,num,nuh,ssen,ssun,ssvn + use variables_3d, only: ssen,ssun,ssvn + use variables_3d, only: sseo,ssuo,ssvo + use variables_3d, only: uu,vv,ww + use variables_3d, only: uuEx,vvEx + use variables_3d, only: tke,eps,num,nuh #ifndef NO_BAROCLINIC use variables_3d, only: T,S #endif @@ -419,8 +426,11 @@ #ifndef NO_3D if (runtype .ge. 2) then LEVEL3 'saving 3D barotropic variables' -!kbk write(RESTART) Uint,Vint - write(RESTART) uu,vv + write(RESTART) ssen,ssun,ssvn + write(RESTART) sseo,ssuo,ssvo + write(RESTART) Uinto,Vinto + write(RESTART) uu,vv,ww + write(RESTART) uuEx,vvEx write(RESTART) tke,eps write(RESTART) num,nuh #ifndef NO_BAROCLINIC @@ -460,12 +470,12 @@ if (runtype .ge. 2) then !KBK This needs to be changed !!!! KBK !Only works because E2DFIELD = I2DFIELD - ssen=z - ssun=zu - ssvn=zv LEVEL3 'reading 3D barotropic variables' -!kbk read(RESTART) Uint,Vint - read(RESTART) uu,vv + read(RESTART) ssen,ssun,ssvn + read(RESTART) sseo,ssuo,ssvo + read(RESTART) Uinto,Vinto + read(RESTART) uu,vv,ww + read(RESTART) uuEx,vvEx read(RESTART) tke,eps read(RESTART) num,nuh #ifndef NO_BAROCLINIC -- GitLab