[cig-commits] r12557 - seismo/3D/SPECFEM3D_GLOBE/trunk/version41_beta/src
dkomati1 at geodynamics.org
dkomati1 at geodynamics.org
Wed Aug 6 14:19:04 PDT 2008
Author: dkomati1
Date: 2008-08-06 14:19:04 -0700 (Wed, 06 Aug 2008)
New Revision: 12557
Modified:
seismo/3D/SPECFEM3D_GLOBE/trunk/version41_beta/src/spline_routines.f90
Log:
converted spline_routines.f90 from heap to stack
Modified: seismo/3D/SPECFEM3D_GLOBE/trunk/version41_beta/src/spline_routines.f90
===================================================================
--- seismo/3D/SPECFEM3D_GLOBE/trunk/version41_beta/src/spline_routines.f90 2008-08-06 21:15:54 UTC (rev 12556)
+++ seismo/3D/SPECFEM3D_GLOBE/trunk/version41_beta/src/spline_routines.f90 2008-08-06 21:19:04 UTC (rev 12557)
@@ -43,10 +43,9 @@
integer :: i
- double precision, dimension(:), allocatable :: temporary_array
+! allocate this automatic array in the memory stack to avoid memory fragmentation with "allocate()"
+ double precision, dimension(npoint) :: temporary_array
- allocate(temporary_array(npoint))
-
spline_coefficients(1) = - 1.d0 / 2.d0
temporary_array(1) = (3.d0/(xpoint(2)-xpoint(1)))*((ypoint(2)-ypoint(1))/(xpoint(2)-xpoint(1))-tangent_first_point)
@@ -71,8 +70,6 @@
spline_coefficients(i) = spline_coefficients(i)*spline_coefficients(i+1) + temporary_array(i)
enddo
- deallocate(temporary_array)
-
end subroutine spline_construction
! --------------
More information about the cig-commits
mailing list