Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
added outputs of melt fraction, melt distributon in fraction form, and ejected melt fraction
  • Loading branch information
Austin Blevins committed Mar 1, 2023
1 parent 61eee34 commit 84ae0d5
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 7 deletions.
2 changes: 2 additions & 0 deletions src/globals/module_globals.f90
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,8 @@ module module_globals
character(*),parameter :: MDFILE = 'surface_meltdist.dat'
character(*),parameter :: EJMFILE = 'surface_ejm.dat'
character(*),parameter :: EJMFFILE = 'surface_ejmf.dat'
character(*),parameter :: MELTFRACFILE = 'surface_meltfrac.dat'
character(*),parameter :: DISTFRACFILE = 'surface_distfrac.dat'

! Global variables
integer(I4B),parameter :: PBCLIM = 1 ! periodic boundary condition limit
Expand Down
24 changes: 17 additions & 7 deletions src/io/io_write_regotrack.f90
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,8 @@ subroutine io_write_regotrack(user,surf,domain)
integer(I4B), parameter :: FMD = 14
integer(I4B), parameter :: FEJM = 15
integer(I4B), parameter :: FEJMF = 16
integer(I4B), parameter :: FMF = 17
integer(I4B), parameter :: FDF = 18
!type(regolisttype),pointer :: current => null()
type(regodatatype),dimension(:),allocatable :: current
integer(I4B),dimension(user%gridsize,user%gridsize) :: stacks_num
Expand All @@ -55,7 +57,9 @@ subroutine io_write_regotrack(user,surf,domain)
open(FAGE,file=AGEFILE,status='replace',form='unformatted')
open(FMD,file=MDFILE,status='replace',form='unformatted')
open(FEJM,file=EJMFILE,status='replace',form='unformatted')
!open(FEJMF,file=EJMFFILE,status='replace',form='unformatted')
open(FMF,file=MELTFRACFILE,status='replace',form='unformatted')
open(FDF,file=DISTFRACFILE,status='replace',form='unformatted')
open(FEJMF,file=EJMFFILE,status='replace',form='unformatted')

! First pass to get stack numbers
stacks_num(:,:) = 0
Expand All @@ -78,10 +82,11 @@ subroutine io_write_regotrack(user,surf,domain)
do i=1,user%gridsize
!current => surf(i,j)%regolayer
N = stacks_num(i,j)
allocate(meltvolume(N),thickness(N),comp(N),age(MAXAGEBINS,N),distvol(domain%rcnum,N),ejm(N),ejmf(N))
allocate(meltvolume(N),thickness(N),comp(N),age(MAXAGEBINS,N),distvol(domain%rcnum,N),ejm(N),ejmf(N),&
meltfrac(N),meltdist(domain%rcnum,N))
allocate(current,source=surf(i,j)%regolayer)
do k=1,N
! meltfrac(k) = current%regodata%meltfrac
meltfrac(k) = current(k)%meltfrac
! thickness(k) = current%regodata%thickness
! comp(k) = current%regodata%comp
! age(:,k) = current%regodata%age(:)
Expand All @@ -92,8 +97,9 @@ subroutine io_write_regotrack(user,surf,domain)
age(:,k) = current(k)%age(:)
!write(*,*) i, j
distvol(:,k) = current(k)%distvol(:)
meltdist(:,k) = current(k)%meltdist(:)
ejm(k) = current(k)%ejm
!ejmf(k) = current(k)%ejmf
ejmf(k) = current(k)%ejmf

end do
deallocate(current)
Expand All @@ -104,7 +110,9 @@ subroutine io_write_regotrack(user,surf,domain)
write(FMD) distvol(:,:)
write(FEJM) ejm(:)
!write(FEJMF) ejmf(:)
deallocate(meltvolume,thickness,comp,age,distvol,ejm,ejmf)
write(FMF) meltfrac(:)
write(FDF) meltdist(:,:)
deallocate(meltvolume,thickness,comp,age,distvol,ejm,ejmf,meltfrac,meltdist)
end do
end do
close(FMELT)
Expand All @@ -113,12 +121,14 @@ subroutine io_write_regotrack(user,surf,domain)
close(FAGE)
close(FMD)
close(FEJM)
!close(FEJMF)
close(FEJMF)
close(FMF)
close(FDF)

recsize = sizeof(itmp) * user%gridsize * user%gridsize
open(LUN,file=STACKNUMFILE,status='replace',form='unformatted',recl=recsize,access='direct')
write(LUN,rec=1) stacks_num
close(LUN)

return
end subroutine io_write_regotrack
end subroutine io_write_regotrack

0 comments on commit 84ae0d5

Please sign in to comment.