diff --git a/source/model/snowtemp.f90 b/source/model/snowtemp.f90
index 39d4c7297f43df3353e22c1bb3bb709836848b66..4d3c403ae7c674b9d17e7fb7e4a20cb0a91d9184 100644
--- a/source/model/snowtemp.f90
+++ b/source/model/snowtemp.f90
@@ -39,6 +39,8 @@ real(kind=ireals)   , intent(in) :: hour
 real(kind=ireals)   , intent(in) :: phi
 !real(kind=ireals)   , intent(in) :: extice
 real(kind=ireals)   , intent(in) :: fetch
+real(kind=ireals), intent(inout) :: a(1:nveclen), b(1:nveclen), &
+&                                   c(1:nveclen), d(1:nveclen), Temp(1:nveclen)
 
 
 real(kind=ireals) :: xx
@@ -52,7 +54,6 @@ real(kind=ireals) :: snowmass_init
 real(kind=ireals) :: CCT(ML)
 real(kind=ireals) :: dt
 
-real(kind=ireals), allocatable :: a(:), b(:), c(:), d(:), Temp(:)
 
 integer(kind=iintegers) :: i
 integer(kind=iintegers) :: iyear
@@ -61,9 +62,6 @@ integer(kind=iintegers) :: iday
 
 SAVE
 
-allocate(a(1:nveclen), b(1:nveclen), c(1:nveclen), &
-&        d(1:nveclen), Temp(1:nveclen))
-
 do i = itop,ms
   T(i) = Tsn(i)    
 enddo
@@ -91,8 +89,6 @@ totalmelts = totalmelts + snmelt*dt
 
 !if (hs1 == 0) hs1=0.00001
 
-deallocate(a, b, c, d, Temp)
-
 END SUBROUTINE SNOWTEMP