diff --git a/src/Makefile.am b/src/Makefile.am index 4a882894..05c8796f 100755 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1,12 +1,12 @@ bin_PROGRAMS = CTEM #ifort optimized flags -#AM_FCFLAGS = -O3 -openmp -parallel -xHost -ipo -assume byterecl -m64 -heap-arrays -FR +AM_FCFLAGS = -O3 -openmp -parallel -xHost -ipo -assume byterecl -m64 -heap-arrays -FR #AM_FCFLAGS = -O3 -openmp -parallel -assume byterecl -m64 -heap-arrays -FR #ifort debug flags #AM_FCFLAGS = -O3 -p -g -openmp -debug all -traceback -CB -assume byterecl -m64 -heap-arrays -FR #gfortran optimized flags -AM_FCFLAGS = -O3 -fopenmp -ffree-form -g -fbounds-check -fbacktrace +#AM_FCFLAGS = -O3 -fopenmp -ffree-form -g -fbounds-check -fbacktrace #gfortran debug flags #AM_FCFLAGS = -O0 -g -fopenmp -fbounds-check -Wall -Warray-bounds -Warray-temporaries -Wimplicit-interface -ffree-form @@ -55,6 +55,7 @@ io/io_updatePbar.f90\ io/io_resetPbar.f90\ io/io_splash.f90\ ejecta/ejecta_emplace.f90\ +ejecta/ejecta_ray_pattern.f90\ ejecta/ejecta_blanket.f90\ ejecta/ejecta_blanket_func.f90\ ejecta/ejecta_thickness.f90\ diff --git a/src/ejecta/module_ejecta.f90 b/src/ejecta/module_ejecta.f90 index 60b9ecf0..6cc14921 100644 --- a/src/ejecta/module_ejecta.f90 +++ b/src/ejecta/module_ejecta.f90 @@ -38,6 +38,18 @@ subroutine ejecta_emplace(user,surf,crater,domain,ejb,ejtble,deltaMtot) end subroutine ejecta_emplace end interface + interface + subroutine ejecta_ray_pattern(user,surf,crater,inc,xi,xf,yi,yf,ejdistribution) + use module_globals + implicit none + type(usertype),intent(in) :: user + type(surftype),dimension(:,:),intent(in) :: surf + type(cratertype),intent(in) :: crater + integer(I4B),intent(in) :: inc,xi,xf,yi,yf + real(DP),dimension(xi:xf,yi:yf),intent(out) :: ejdistribution + end subroutine ejecta_ray_pattern + end interface + interface subroutine ejecta_rootfind(user,crater,domain,erad,lrad,vejsq,ejang,firstrun) use module_globals diff --git a/src/globals/module_globals.f90 b/src/globals/module_globals.f90 index 94229219..ffb8a952 100644 --- a/src/globals/module_globals.f90 +++ b/src/globals/module_globals.f90 @@ -99,6 +99,7 @@ module module_globals real(DP) :: ejrim ! ejecta height at crater rim real(DP) :: cxexp,cxtran ! simple to complex scaling parameters real(DP) :: kdiffterm, saccelterm ! seismic diffusion and accelleration terms + real(DP) :: continuous ! Size of the continuous ejecta blanket ! Pixel domain properties integer(I4B) :: xlpx,ylpx ! Crater center in pixels integer(I4B) :: fcratpx,fradpx,rimdispx,ejdispx @@ -264,7 +265,7 @@ module module_globals character(*),parameter :: MASSFILE = 'impactmass.dat' ! Global variables -integer(I4B),parameter :: PBCLIM = 3 ! periodic boundary condition limit +integer(I4B),parameter :: PBCLIM = 1 ! periodic boundary condition limit integer(I4B),parameter :: SMALLESTCOUNTABLE = 5 ! Minimum pixel diameter for a crater to be considered countable real(DP),parameter :: SMALLESTEJECTA = 1.5 ! Minimum number of pixels from center of crater for an ejecta to have any surface effects integer(I4B),parameter :: TRUECOLS = 6 ! Number of columns in the true crater count array