Commit ab5be417 authored by Lena noack's avatar Lena noack
Browse files

Small bubfix in thermal.f90

parent f4e08eb2
......@@ -7,8 +7,9 @@ ifneq ($(server),hpc)
ifneq ($(server),plato)
ifneq ($(server),asteria)
ifneq ($(server),soroban)
ifneq ($(server),curta)
$(warning *** Wrong value server=$(server))
$(warning *** The correct values for server are local, asteria, soroban, plato, hlrn or hpc)
$(warning *** The correct values for server are local, asteria, soroban, curta, plato, hlrn or hpc)
$(error )
endif
endif
......@@ -17,6 +18,7 @@ endif
endif
endif
endif
endif
ifndef compiler
compiler=gnu
......@@ -110,6 +112,11 @@ else
MKLLIB = $(MKLROOT)/lib/intel64
endif
ifeq ($(server),curta)
MKLROOT = /trinity/shared/.easybuild.backup/software/imkl/2018.3.222-iimpi-2018b/compilers_and_libraries_2018.3.222/linux/mkl
MKLLIB = $(MKLROOT)/lib/intel64_lin
endif
ifeq ($(server),plato)
MKLROOT = /opt/intel/Compiler/11.1/069/mkl
#MKLROOT = /opt/intel/Compiler/11.1/ifc069/mkl
......
......@@ -68,23 +68,26 @@ contains
call thermal_apply_heat_equation_CN(j2D,dt,mesh,field,uTU,vTV,wTW,t,sys_en,pC,pD,pF,pG,pH,pI,pL,pM,pN,pT,pW,pX,&
& cell,mc,eta,ml,Psurf)
else if(pN%e_solver.eq.0) then ! direct first-order explicit, only one outer iteration per TS
call thermal_apply_heat_equation(j2D,dt,dt_old,mesh,field,uTU,vTV,wTW,t,0,pC,pG,pH,pI,pL,pM,pN,pT,pW,pX,cell,mc,eta)
call thermal_apply_heat_equation(j2D,dt,dt_old,mesh,field,uTU,vTV,wTW,t,0,pC,pF,pG,pH,pI,pL,pM,pN,pT,pW,pX,&
&cell,mc,eta)
else if(pN%e_solver.eq.1) then ! second-order iterative explicit
if (TS_restart.eq.1) then ! no T_vOld available -> first-order scheme used
call thermal_apply_heat_equation(j2D,dt,dt_old,mesh,field,uTU,vTV,wTW,t,0,pC,pG,pH,pI,pL,pM,pN,pT,pW,pX,cell,mc,eta)
call thermal_apply_heat_equation(j2D,dt,dt_old,mesh,field,uTU,vTV,wTW,t,0,pC,pF,pG,pH,pI,pL,pM,pN,pT,pW,&
&pX,cell,mc,eta)
else
call thermal_apply_heat_equation(j2D,dt,dt_old,mesh,field,uTU,vTV,wTW,t,1,pC,pG,pH,pI,pL,pM,pN,pT,pW,pX,cell,mc,eta)
call thermal_apply_heat_equation(j2D,dt,dt_old,mesh,field,uTU,vTV,wTW,t,1,pC,pF,pG,pH,pI,pL,pM,pN,pT,pW,&
&pX,cell,mc,eta)
endif
else if(pN%e_solver.eq.2) then ! first-oder iterative implicit
call thermal_apply_heat_equation_impl(j2D,dt,dt_old,mesh,field,uTU,vTV,wTW,t,sys_en,2,pC,pG,pH,pI,pL,pM,pN,pT,pW,pX,&
&cell,mc,eta,ml)
call thermal_apply_heat_equation_impl(j2D,dt,dt_old,mesh,field,uTU,vTV,wTW,t,sys_en,2,pC,pF,pG,pH,pI,pL,pM,pN,pT,pW,&
&pX,cell,mc,eta,ml)
else ! second-order iterative implicit
if (TS_restart.eq.1) then ! no T_vOld available -> first-order implicit scheme used
call thermal_apply_heat_equation_impl(j2D,dt,dt_old,mesh,field,uTU,vTV,wTW,t,sys_en,2,pC,pG,pH,pI,pL,pM,pN,pT,pW,pX,&
&cell,mc,eta,ml)
call thermal_apply_heat_equation_impl(j2D,dt,dt_old,mesh,field,uTU,vTV,wTW,t,sys_en,2,pC,pF,pG,pH,pI,pL,pM,pN,pT,pW,&
&pX,cell,mc,eta,ml)
else
call thermal_apply_heat_equation_impl(j2D,dt,dt_old,mesh,field,uTU,vTV,wTW,t,sys_en,3,pC,pG,pH,pI,pL,pM,pN,pT,pW,pX,&
&cell,mc,eta,ml)
call thermal_apply_heat_equation_impl(j2D,dt,dt_old,mesh,field,uTU,vTV,wTW,t,sys_en,3,pC,pF,pG,pH,pI,pL,pM,pN,pT,pW,&
&pX,cell,mc,eta,ml)
endif
endif
......@@ -201,8 +204,8 @@ contains
!! !!
!! ToDo: add melting terms, also so far compressible only in terms of total temperature !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
subroutine thermal_apply_heat_equation_CN(j2D,dt,mesh,field,uTU,vTV,wTW,t,sys_en,pC,pD,pF,pG,pH,pI,pL,pM,pN,pT,pW,pX,&
& cell,mc,eta,melt_local,Psurf)
subroutine thermal_apply_heat_equation_CN(j2D,dt,mesh,field,uTU,vTV,wTW,t,sys_en,pC,pD,pF,pG,pH,pI,pL,pM,pN,pT,pW,&
& pX,cell,mc,eta,melt_local,Psurf)
integer,intent(in)::j2D ! index j2 (jmin=0/1)
type(variables_unknowns),intent(inout)::field
type(mesh_cp),intent(in)::mesh
......@@ -1230,7 +1233,8 @@ contains
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
subroutine thermal_apply_heat_equation(j2D,dt,dt_old,mesh,field,uTU,vTV,wTW,t,e_solver,pC,pG,pH,pI,pL,pM,pN,pT,pW,pX,cell,mc,eta)
subroutine thermal_apply_heat_equation(j2D,dt,dt_old,mesh,field,uTU,vTV,wTW,t,e_solver,pC,pF,pG,pH,pI,pL,pM,pN,pT,pW,pX,&
&cell,mc,eta)
integer,intent(in)::j2D ! index j2 (jmin=0/1)
type(variables_unknowns),intent(inout)::field
type(mesh_cp),intent(in)::mesh
......@@ -1240,6 +1244,7 @@ contains
type(cell_properties),intent(inout)::cell
type(melt_properties),intent(in)::mc
type(param_C),intent(in)::pC
type(param_F),intent(in)::pF
type(param_G),intent(in)::pG
type(param_H),intent(inout)::pH
type(param_N),intent(in)::pN
......@@ -1716,7 +1721,7 @@ contains
subroutine thermal_apply_heat_equation_impl(j2D,dt,dt_old,mesh,field,uTU,vTV,wTW,t,sys_en,e_solver,&
&pC,pG,pH,pI,pL,pM,pN,pT,pW,pX,cell,mc,eta,melt_local)
&pC,pF,pG,pH,pI,pL,pM,pN,pT,pW,pX,cell,mc,eta,melt_local)
integer,intent(in)::j2D ! index j2 (jmin=0/1)
type(variables_unknowns),intent(inout)::field
type(mesh_cp),intent(in)::mesh
......@@ -1726,6 +1731,7 @@ contains
real(dp),intent(in)::uTU(:,:,:),vTV(:,:,:),wTW(:,:,:),eta(0:,j2D:,0:)
real(dp),intent(in):: dt,dt_old,t
type(param_C),intent(in)::pC
type(param_F),intent(in)::pF
type(param_G),intent(in)::pG
type(param_H),intent(inout)::pH
type(param_N),intent(in)::pN
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment