http://websrv.cs.umt.edu/isis/api.php?action=feedcontributions&user=Brian+anderson&feedformat=atomInteractive System for Ice sheet Simulation - User contributions [en]2020-03-30T14:41:39ZUser contributionsMediaWiki 1.21.1http://websrv.cs.umt.edu/isis/index.php/Team_5_SolutionTeam 5 Solution2009-08-08T21:58:19Z<p>Brian anderson: </p>
<hr />
<div>[[Image:Mountain_flow.png]]<br />
<br />
<source lang='fortran'><br />
<br />
! A solutions to Kees'' problem - explicit non-linear diffusion equation <br />
! for time integration of mountain glacier flow<br />
<br />
program main<br />
<br />
implicit none<br />
<br />
! x: vector along flowline<br />
! b: bed elevation<br />
! S: surface elevation<br />
! H: ice thickness<br />
! M: surface mass balance<br />
<br />
real, allocatable :: x(:), b(:), S(:), H(:), M(:), dHdt(:) ! grid points on primary grid<br />
real, allocatable :: Q_mid(:), D_mid(:), dSdx_mid(:) ! grid points for staggered grid<br />
real, parameter :: dx = 1000, dt = 0.01 ! spatial (units: m) and time step (units: yr)<br />
real, parameter :: grid_length = 50000 ! length of domain (m)<br />
real, parameter :: S0 = 1000 ! elevation of first point on grid (m)<br />
real, parameter :: M0 = 4, M1=-2e-4 ! parameters for linear mass balance<br />
real, parameter :: dbdx = -0.1 ! bedslope<br />
real, parameter :: g = 9.8 ! m/s2<br />
real, parameter :: rho = 920 ! kg/m3<br />
real, parameter :: A = 1e-16 ! kpa-3yr-1<br />
real, parameter :: n = 3 ! flow law exponent<br />
real, parameter :: t_int = 1 ! interval to output data<br />
real, parameter :: tol = 1e-6 ! steady-state tolerance<br />
real, parameter :: t_max = 500 ! maximum time<br />
real :: t, t_old ! time variables <br />
real :: C ! diffusion constant<br />
<br />
integer :: Nx, ii, errstat<br />
<br />
Nx = floor(grid_length/dx)+1<br />
<br />
allocate(x(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate x")<br />
<br />
allocate(b(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate b")<br />
<br />
allocate(S(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate S")<br />
<br />
allocate(H(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate H")<br />
<br />
allocate(M(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate M")<br />
<br />
allocate(dHdt(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate dHdt")<br />
<br />
allocate(Q_mid(Nx-1),stat=errstat)<br />
call checkerr(errstat,"failed to allocate Q_mid")<br />
<br />
allocate(D_mid(Nx-1),stat=errstat)<br />
call checkerr(errstat,"failed to allocate D_mid")<br />
<br />
allocate(dSdx_mid(Nx-1),stat=errstat)<br />
call checkerr(errstat,"failed to allocate dSdx_mid")<br />
<br />
open(unit=1,file='data')<br />
<br />
! set up vectors<br />
do ii=1,Nx<br />
x(ii)=(ii-1)*dx<br />
b(ii)=S0 + x(ii) * dbdx<br />
S(ii)=b(ii) ! start with zero ice thickness<br />
H(ii)=S(ii)-b(ii)<br />
dHdt(ii)=100 ! start with something silly for steady-state test <br />
M(ii)=M0+M1*x(ii)<br />
enddo<br />
write(*,*) M<br />
<br />
C = 2 * A/(n+2)*(rho*g)**n<br />
<br />
! time loop<br />
t=0<br />
t_old=-t_int<br />
time_loop: do while (maxval(abs(dHdt))>tol .and. t<t_max)<br />
t=t+dt<br />
! write(*,*)t, maxval(abs(dHdt)), minval(M), maxval(M)<br />
! surface slope<br />
dSdx_mid=(S(2:Nx)-S(1:Nx-1))/dx<br />
! diffusion<br />
D_mid=C*((H(1:Nx-1)+H(2:Nx))/2)**(n+2)*(abs(dSdx_mid))**(n-1)<br />
! flux<br />
Q_mid=-D_mid*dSdx_mid<br />
! change in ice thickness<br />
dHdt(2:Nx-1)=-(Q_mid(2:Nx-1)-Q_mid(1:Nx-2))/dx+M(2:Nx-1)*dt<br />
dHdt(1)=M(1)*dt<br />
dHdt(Nx)=M(Nx)*dt<br />
<br />
H=H+dHdt<br />
S=b+H<br />
<br />
! apply boundary conditions<br />
H(1) = 0<br />
do ii=1,Nx<br />
if(H(ii).lt.0) then<br />
H(ii)=0<br />
endif<br />
enddo<br />
<br />
if(t>=t_old+t_int) then<br />
write (1,*) H<br />
t_old=t<br />
endif<br />
<br />
enddo time_loop<br />
close(1)<br />
<br />
contains<br />
<br />
subroutine checkerr(errstat,msg)<br />
implicit none<br />
integer, intent(in) :: errstat<br />
character(*), intent(in) :: msg <br />
if (errstat /= 0) then<br />
write(*,*) "ERROR:", msg<br />
stop<br />
end if<br />
end subroutine checkerr<br />
<br />
<br />
end program<br />
<br />
<br />
<br />
</source></div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Team_5_SolutionTeam 5 Solution2009-08-08T21:57:49Z<p>Brian anderson: </p>
<hr />
<div>[[Image:moutain_flow.png]]<br />
<br />
<source lang='fortran'><br />
<br />
! A solutions to Kees'' problem - explicit non-linear diffusion equation <br />
! for time integration of mountain glacier flow<br />
<br />
program main<br />
<br />
implicit none<br />
<br />
! x: vector along flowline<br />
! b: bed elevation<br />
! S: surface elevation<br />
! H: ice thickness<br />
! M: surface mass balance<br />
<br />
real, allocatable :: x(:), b(:), S(:), H(:), M(:), dHdt(:) ! grid points on primary grid<br />
real, allocatable :: Q_mid(:), D_mid(:), dSdx_mid(:) ! grid points for staggered grid<br />
real, parameter :: dx = 1000, dt = 0.01 ! spatial (units: m) and time step (units: yr)<br />
real, parameter :: grid_length = 50000 ! length of domain (m)<br />
real, parameter :: S0 = 1000 ! elevation of first point on grid (m)<br />
real, parameter :: M0 = 4, M1=-2e-4 ! parameters for linear mass balance<br />
real, parameter :: dbdx = -0.1 ! bedslope<br />
real, parameter :: g = 9.8 ! m/s2<br />
real, parameter :: rho = 920 ! kg/m3<br />
real, parameter :: A = 1e-16 ! kpa-3yr-1<br />
real, parameter :: n = 3 ! flow law exponent<br />
real, parameter :: t_int = 1 ! interval to output data<br />
real, parameter :: tol = 1e-6 ! steady-state tolerance<br />
real, parameter :: t_max = 500 ! maximum time<br />
real :: t, t_old ! time variables <br />
real :: C ! diffusion constant<br />
<br />
integer :: Nx, ii, errstat<br />
<br />
Nx = floor(grid_length/dx)+1<br />
<br />
allocate(x(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate x")<br />
<br />
allocate(b(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate b")<br />
<br />
allocate(S(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate S")<br />
<br />
allocate(H(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate H")<br />
<br />
allocate(M(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate M")<br />
<br />
allocate(dHdt(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate dHdt")<br />
<br />
allocate(Q_mid(Nx-1),stat=errstat)<br />
call checkerr(errstat,"failed to allocate Q_mid")<br />
<br />
allocate(D_mid(Nx-1),stat=errstat)<br />
call checkerr(errstat,"failed to allocate D_mid")<br />
<br />
allocate(dSdx_mid(Nx-1),stat=errstat)<br />
call checkerr(errstat,"failed to allocate dSdx_mid")<br />
<br />
open(unit=1,file='data')<br />
<br />
! set up vectors<br />
do ii=1,Nx<br />
x(ii)=(ii-1)*dx<br />
b(ii)=S0 + x(ii) * dbdx<br />
S(ii)=b(ii) ! start with zero ice thickness<br />
H(ii)=S(ii)-b(ii)<br />
dHdt(ii)=100 ! start with something silly for steady-state test <br />
M(ii)=M0+M1*x(ii)<br />
enddo<br />
write(*,*) M<br />
<br />
C = 2 * A/(n+2)*(rho*g)**n<br />
<br />
! time loop<br />
t=0<br />
t_old=-t_int<br />
time_loop: do while (maxval(abs(dHdt))>tol .and. t<t_max)<br />
t=t+dt<br />
! write(*,*)t, maxval(abs(dHdt)), minval(M), maxval(M)<br />
! surface slope<br />
dSdx_mid=(S(2:Nx)-S(1:Nx-1))/dx<br />
! diffusion<br />
D_mid=C*((H(1:Nx-1)+H(2:Nx))/2)**(n+2)*(abs(dSdx_mid))**(n-1)<br />
! flux<br />
Q_mid=-D_mid*dSdx_mid<br />
! change in ice thickness<br />
dHdt(2:Nx-1)=-(Q_mid(2:Nx-1)-Q_mid(1:Nx-2))/dx+M(2:Nx-1)*dt<br />
dHdt(1)=M(1)*dt<br />
dHdt(Nx)=M(Nx)*dt<br />
<br />
H=H+dHdt<br />
S=b+H<br />
<br />
! apply boundary conditions<br />
H(1) = 0<br />
do ii=1,Nx<br />
if(H(ii).lt.0) then<br />
H(ii)=0<br />
endif<br />
enddo<br />
<br />
if(t>=t_old+t_int) then<br />
write (1,*) H<br />
t_old=t<br />
endif<br />
<br />
enddo time_loop<br />
close(1)<br />
<br />
contains<br />
<br />
subroutine checkerr(errstat,msg)<br />
implicit none<br />
integer, intent(in) :: errstat<br />
character(*), intent(in) :: msg <br />
if (errstat /= 0) then<br />
write(*,*) "ERROR:", msg<br />
stop<br />
end if<br />
end subroutine checkerr<br />
<br />
<br />
end program<br />
<br />
<br />
<br />
</source></div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/File:Mountain_flow.pngFile:Mountain flow.png2009-08-08T21:57:18Z<p>Brian anderson: </p>
<hr />
<div></div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Team_5_SolutionTeam 5 Solution2009-08-08T21:56:44Z<p>Brian anderson: </p>
<hr />
<div><source lang='fortran'><br />
<br />
! A solutions to Kees'' problem - explicit non-linear diffusion equation <br />
! for time integration of mountain glacier flow<br />
<br />
program main<br />
<br />
implicit none<br />
<br />
! x: vector along flowline<br />
! b: bed elevation<br />
! S: surface elevation<br />
! H: ice thickness<br />
! M: surface mass balance<br />
<br />
real, allocatable :: x(:), b(:), S(:), H(:), M(:), dHdt(:) ! grid points on primary grid<br />
real, allocatable :: Q_mid(:), D_mid(:), dSdx_mid(:) ! grid points for staggered grid<br />
real, parameter :: dx = 1000, dt = 0.01 ! spatial (units: m) and time step (units: yr)<br />
real, parameter :: grid_length = 50000 ! length of domain (m)<br />
real, parameter :: S0 = 1000 ! elevation of first point on grid (m)<br />
real, parameter :: M0 = 4, M1=-2e-4 ! parameters for linear mass balance<br />
real, parameter :: dbdx = -0.1 ! bedslope<br />
real, parameter :: g = 9.8 ! m/s2<br />
real, parameter :: rho = 920 ! kg/m3<br />
real, parameter :: A = 1e-16 ! kpa-3yr-1<br />
real, parameter :: n = 3 ! flow law exponent<br />
real, parameter :: t_int = 1 ! interval to output data<br />
real, parameter :: tol = 1e-6 ! steady-state tolerance<br />
real, parameter :: t_max = 500 ! maximum time<br />
real :: t, t_old ! time variables <br />
real :: C ! diffusion constant<br />
<br />
integer :: Nx, ii, errstat<br />
<br />
Nx = floor(grid_length/dx)+1<br />
<br />
allocate(x(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate x")<br />
<br />
allocate(b(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate b")<br />
<br />
allocate(S(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate S")<br />
<br />
allocate(H(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate H")<br />
<br />
allocate(M(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate M")<br />
<br />
allocate(dHdt(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate dHdt")<br />
<br />
allocate(Q_mid(Nx-1),stat=errstat)<br />
call checkerr(errstat,"failed to allocate Q_mid")<br />
<br />
allocate(D_mid(Nx-1),stat=errstat)<br />
call checkerr(errstat,"failed to allocate D_mid")<br />
<br />
allocate(dSdx_mid(Nx-1),stat=errstat)<br />
call checkerr(errstat,"failed to allocate dSdx_mid")<br />
<br />
open(unit=1,file='data')<br />
<br />
! set up vectors<br />
do ii=1,Nx<br />
x(ii)=(ii-1)*dx<br />
b(ii)=S0 + x(ii) * dbdx<br />
S(ii)=b(ii) ! start with zero ice thickness<br />
H(ii)=S(ii)-b(ii)<br />
dHdt(ii)=100 ! start with something silly for steady-state test <br />
M(ii)=M0+M1*x(ii)<br />
enddo<br />
write(*,*) M<br />
<br />
C = 2 * A/(n+2)*(rho*g)**n<br />
<br />
! time loop<br />
t=0<br />
t_old=-t_int<br />
time_loop: do while (maxval(abs(dHdt))>tol .and. t<t_max)<br />
t=t+dt<br />
! write(*,*)t, maxval(abs(dHdt)), minval(M), maxval(M)<br />
! surface slope<br />
dSdx_mid=(S(2:Nx)-S(1:Nx-1))/dx<br />
! diffusion<br />
D_mid=C*((H(1:Nx-1)+H(2:Nx))/2)**(n+2)*(abs(dSdx_mid))**(n-1)<br />
! flux<br />
Q_mid=-D_mid*dSdx_mid<br />
! change in ice thickness<br />
dHdt(2:Nx-1)=-(Q_mid(2:Nx-1)-Q_mid(1:Nx-2))/dx+M(2:Nx-1)*dt<br />
dHdt(1)=M(1)*dt<br />
dHdt(Nx)=M(Nx)*dt<br />
<br />
H=H+dHdt<br />
S=b+H<br />
<br />
! apply boundary conditions<br />
H(1) = 0<br />
do ii=1,Nx<br />
if(H(ii).lt.0) then<br />
H(ii)=0<br />
endif<br />
enddo<br />
<br />
if(t>=t_old+t_int) then<br />
write (1,*) H<br />
t_old=t<br />
endif<br />
<br />
enddo time_loop<br />
close(1)<br />
<br />
contains<br />
<br />
subroutine checkerr(errstat,msg)<br />
implicit none<br />
integer, intent(in) :: errstat<br />
character(*), intent(in) :: msg <br />
if (errstat /= 0) then<br />
write(*,*) "ERROR:", msg<br />
stop<br />
end if<br />
end subroutine checkerr<br />
<br />
<br />
end program<br />
<br />
<br />
<br />
</source></div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Team_5_SolutionTeam 5 Solution2009-08-08T21:56:22Z<p>Brian anderson: </p>
<hr />
<div><source lang='fortran'><br />
<br />
! A solutions to Kees' problem - explicit non-linear diffusion equation <br />
! for time integration of mountain glacier flow<br />
<br />
program main<br />
<br />
implicit none<br />
<br />
! x: vector along flowline<br />
! b: bed elevation<br />
! S: surface elevation<br />
! H: ice thickness<br />
! M: surface mass balance<br />
<br />
real, allocatable :: x(:), b(:), S(:), H(:), M(:), dHdt(:) ! grid points on primary grid<br />
real, allocatable :: Q_mid(:), D_mid(:), dSdx_mid(:) ! grid points for staggered grid<br />
real, parameter :: dx = 1000, dt = 0.01 ! spatial (units: m) and time step (units: yr)<br />
real, parameter :: grid_length = 50000 ! length of domain (m)<br />
real, parameter :: S0 = 1000 ! elevation of first point on grid (m)<br />
real, parameter :: M0 = 4, M1=-2e-4 ! parameters for linear mass balance<br />
real, parameter :: dbdx = -0.1 ! bedslope<br />
real, parameter :: g = 9.8 ! m/s2<br />
real, parameter :: rho = 920 ! kg/m3<br />
real, parameter :: A = 1e-16 ! kpa-3yr-1<br />
real, parameter :: n = 3 ! flow law exponent<br />
real, parameter :: t_int = 1 ! interval to output data<br />
real, parameter :: tol = 1e-6 ! steady-state tolerance<br />
real, parameter :: t_max = 500 ! maximum time<br />
real :: t, t_old ! time variables <br />
real :: C ! diffusion constant<br />
<br />
integer :: Nx, ii, errstat<br />
<br />
Nx = floor(grid_length/dx)+1<br />
<br />
allocate(x(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate x")<br />
<br />
allocate(b(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate b")<br />
<br />
allocate(S(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate S")<br />
<br />
allocate(H(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate H")<br />
<br />
allocate(M(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate M")<br />
<br />
allocate(dHdt(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate dHdt")<br />
<br />
allocate(Q_mid(Nx-1),stat=errstat)<br />
call checkerr(errstat,"failed to allocate Q_mid")<br />
<br />
allocate(D_mid(Nx-1),stat=errstat)<br />
call checkerr(errstat,"failed to allocate D_mid")<br />
<br />
allocate(dSdx_mid(Nx-1),stat=errstat)<br />
call checkerr(errstat,"failed to allocate dSdx_mid")<br />
<br />
open(unit=1,file='data')<br />
<br />
! set up vectors<br />
do ii=1,Nx<br />
x(ii)=(ii-1)*dx<br />
b(ii)=S0 + x(ii) * dbdx<br />
S(ii)=b(ii) ! start with zero ice thickness<br />
H(ii)=S(ii)-b(ii)<br />
dHdt(ii)=100 ! start with something silly for steady-state test <br />
M(ii)=M0+M1*x(ii)<br />
enddo<br />
write(*,*) M<br />
<br />
C = 2 * A/(n+2)*(rho*g)**n<br />
<br />
! time loop<br />
t=0<br />
t_old=-t_int<br />
time_loop: do while (maxval(abs(dHdt))>tol .and. t<t_max)<br />
t=t+dt<br />
! write(*,*)t, maxval(abs(dHdt)), minval(M), maxval(M)<br />
! surface slope<br />
dSdx_mid=(S(2:Nx)-S(1:Nx-1))/dx<br />
! diffusion<br />
D_mid=C*((H(1:Nx-1)+H(2:Nx))/2)**(n+2)*(abs(dSdx_mid))**(n-1)<br />
! flux<br />
Q_mid=-D_mid*dSdx_mid<br />
! change in ice thickness<br />
dHdt(2:Nx-1)=-(Q_mid(2:Nx-1)-Q_mid(1:Nx-2))/dx+M(2:Nx-1)*dt<br />
dHdt(1)=M(1)*dt<br />
dHdt(Nx)=M(Nx)*dt<br />
<br />
H=H+dHdt<br />
S=b+H<br />
<br />
! apply boundary conditions<br />
H(1) = 0<br />
do ii=1,Nx<br />
if(H(ii).lt.0) then<br />
H(ii)=0<br />
endif<br />
enddo<br />
<br />
if(t>=t_old+t_int) then<br />
write (1,*) H<br />
t_old=t<br />
endif<br />
<br />
enddo time_loop<br />
close(1)<br />
<br />
contains<br />
<br />
subroutine checkerr(errstat,msg)<br />
implicit none<br />
integer, intent(in) :: errstat<br />
character(*), intent(in) :: msg <br />
if (errstat /= 0) then<br />
write(*,*) "ERROR:", msg<br />
stop<br />
end if<br />
end subroutine checkerr<br />
<br />
<br />
end program<br />
<br />
<br />
<br />
</source></div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Team_5_SolutionTeam 5 Solution2009-08-08T21:56:02Z<p>Brian anderson: New page: <source> ! A solutions to Kees' problem - explicit non-linear diffusion equation ! for time integration of mountain glacier flow program main implicit none ! x: vector along flowline ...</p>
<hr />
<div><source><br />
<br />
! A solutions to Kees' problem - explicit non-linear diffusion equation <br />
! for time integration of mountain glacier flow<br />
<br />
program main<br />
<br />
implicit none<br />
<br />
! x: vector along flowline<br />
! b: bed elevation<br />
! S: surface elevation<br />
! H: ice thickness<br />
! M: surface mass balance<br />
<br />
real, allocatable :: x(:), b(:), S(:), H(:), M(:), dHdt(:) ! grid points on primary grid<br />
real, allocatable :: Q_mid(:), D_mid(:), dSdx_mid(:) ! grid points for staggered grid<br />
real, parameter :: dx = 1000, dt = 0.01 ! spatial (units: m) and time step (units: yr)<br />
real, parameter :: grid_length = 50000 ! length of domain (m)<br />
real, parameter :: S0 = 1000 ! elevation of first point on grid (m)<br />
real, parameter :: M0 = 4, M1=-2e-4 ! parameters for linear mass balance<br />
real, parameter :: dbdx = -0.1 ! bedslope<br />
real, parameter :: g = 9.8 ! m/s2<br />
real, parameter :: rho = 920 ! kg/m3<br />
real, parameter :: A = 1e-16 ! kpa-3yr-1<br />
real, parameter :: n = 3 ! flow law exponent<br />
real, parameter :: t_int = 1 ! interval to output data<br />
real, parameter :: tol = 1e-6 ! steady-state tolerance<br />
real, parameter :: t_max = 500 ! maximum time<br />
real :: t, t_old ! time variables <br />
real :: C ! diffusion constant<br />
<br />
integer :: Nx, ii, errstat<br />
<br />
Nx = floor(grid_length/dx)+1<br />
<br />
allocate(x(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate x")<br />
<br />
allocate(b(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate b")<br />
<br />
allocate(S(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate S")<br />
<br />
allocate(H(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate H")<br />
<br />
allocate(M(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate M")<br />
<br />
allocate(dHdt(Nx),stat=errstat)<br />
call checkerr(errstat,"failed to allocate dHdt")<br />
<br />
allocate(Q_mid(Nx-1),stat=errstat)<br />
call checkerr(errstat,"failed to allocate Q_mid")<br />
<br />
allocate(D_mid(Nx-1),stat=errstat)<br />
call checkerr(errstat,"failed to allocate D_mid")<br />
<br />
allocate(dSdx_mid(Nx-1),stat=errstat)<br />
call checkerr(errstat,"failed to allocate dSdx_mid")<br />
<br />
open(unit=1,file='data')<br />
<br />
! set up vectors<br />
do ii=1,Nx<br />
x(ii)=(ii-1)*dx<br />
b(ii)=S0 + x(ii) * dbdx<br />
S(ii)=b(ii) ! start with zero ice thickness<br />
H(ii)=S(ii)-b(ii)<br />
dHdt(ii)=100 ! start with something silly for steady-state test <br />
M(ii)=M0+M1*x(ii)<br />
enddo<br />
write(*,*) M<br />
<br />
C = 2 * A/(n+2)*(rho*g)**n<br />
<br />
! time loop<br />
t=0<br />
t_old=-t_int<br />
time_loop: do while (maxval(abs(dHdt))>tol .and. t<t_max)<br />
t=t+dt<br />
! write(*,*)t, maxval(abs(dHdt)), minval(M), maxval(M)<br />
! surface slope<br />
dSdx_mid=(S(2:Nx)-S(1:Nx-1))/dx<br />
! diffusion<br />
D_mid=C*((H(1:Nx-1)+H(2:Nx))/2)**(n+2)*(abs(dSdx_mid))**(n-1)<br />
! flux<br />
Q_mid=-D_mid*dSdx_mid<br />
! change in ice thickness<br />
dHdt(2:Nx-1)=-(Q_mid(2:Nx-1)-Q_mid(1:Nx-2))/dx+M(2:Nx-1)*dt<br />
dHdt(1)=M(1)*dt<br />
dHdt(Nx)=M(Nx)*dt<br />
<br />
H=H+dHdt<br />
S=b+H<br />
<br />
! apply boundary conditions<br />
H(1) = 0<br />
do ii=1,Nx<br />
if(H(ii).lt.0) then<br />
H(ii)=0<br />
endif<br />
enddo<br />
<br />
if(t>=t_old+t_int) then<br />
write (1,*) H<br />
t_old=t<br />
endif<br />
<br />
enddo time_loop<br />
close(1)<br />
<br />
contains<br />
<br />
subroutine checkerr(errstat,msg)<br />
implicit none<br />
integer, intent(in) :: errstat<br />
character(*), intent(in) :: msg <br />
if (errstat /= 0) then<br />
write(*,*) "ERROR:", msg<br />
stop<br />
end if<br />
end subroutine checkerr<br />
<br />
<br />
end program<br />
<br />
<br />
<br />
</source></div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/File:Ismss_mountain_glaciers.pdfFile:Ismss mountain glaciers.pdf2009-08-07T14:37:36Z<p>Brian anderson: uploaded a new version of "Image:Ismss mountain glaciers.pdf"</p>
<hr />
<div></div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Summer_Modeling_SchoolSummer Modeling School2009-08-07T05:06:25Z<p>Brian anderson: </p>
<hr />
<div>[[Image:Portland.jpg|thumb|right|400 px|The summer ice sheet modeling school will be held in Portland Oregon, August 3-14, 2009]]<br />
<br />
==Overview==<br />
The Summer Modeling School will be an intensive Summer School that will bring current and future ice-sheet scientists together to develop better models for the projection of future sea-level rise (slr). The IPCC Fourth Assessment Report [http://www.ipcc.ch/ipccreports/ar4-syr.htm] acknowledged that current models do not adequately treat the dynamic response of ice sheets to climate change, and that this is the largest uncertainty in assessing potential rapid sea-level rise. Recognizing this, an ice-sheet modelling Workshop was held during the July 2008 SCAR/IASC [https://www.comnap.aq/content/events/osc2008] meeting, in St. Petersburg, Russia. This meeting developed a community strategy on how best to (i) improve the physical understanding of ice-sheet processes responsible for rapid change; (ii) incorporate improved physical understanding into numerical models; (iii) assimilate appropriate data into the models for calibration and validation; and (iv) develop prognostic whole ice-sheet models that better incorporate non-linear ice-sheet response to environmental forcing (such as change in surface mass balance, loss of buttressing from floating ice shelves and ice tongues, and rising sea level). <br />
<br />
The two-week Summer School is a first step towards implementing this strategy. It will bring scientists from differing backgrounds together and allow more extensive and in-depth interactions between the relevant scientific research communities. A series of general background lectures as well as discussions of more specialized and advanced topics during this Summer School will provide the foundation for cross-disciplinary research, particularly for early career scientists. We anticipate publication of lecture notes both in hard copy and on a dedicated home page, to provide the glaciological community with an up-to-date overview of the science and observational techniques that will serve to guide further research efforts. Direct beneficiaries will be young researchers; indirect beneficiaries will be coastal zone communities who will gain improved sea level change forecasts to underpin their plans for sustainable development.<br />
<br />
===Venue===<br />
The modeling school will be held on the campus of [[Wikipedia:Portland State University|Portland State University]] in [[Wikipedia:Portland, Oregon|Portland, Oregon]] August 3-14, 2009.<br />
<br />
* [http://maps.google.com/maps?f=d&source=s_d&saddr=Portland+Airport&daddr=310+SW+Lincoln+St,+Portland,+OR+97201-5007+(University+Place-Portland)&geocode=&hl=en&mra=ls&dirflg=r&date=07%2F28%2F09&time=8:59am&ttype=dep&noexp=0&noal=0&sort=&tline=&sll=45.54878,-122.629155&sspn=0.092445,0.144367&ie=UTF8&ll=45.548679,-122.619438&spn=0.092445,0.144367&z=13&start=0 Map] from airport to [http://cegs.pdx.edu/stay/upl/ University Place Hotel] using public transport (note that the directions in your travel letter are better than the Google generated instructions here).<br />
<br />
* [http://maps.google.com/maps?f=d&source=s_d&saddr=310+SW+Lincoln+St,+Portland,+OR+97201-5007+(University+Place-Portland)&daddr=1721+SW+Broadway,+Portland,+OR+97201+(Cramer+Hall)&hl=en&geocode=FdVhtgIdZwqw-CHO0mMQPCwi0Q%3BFRN3tgIdvP2v-CHxCBg32xEzXA&mra=ls&dirflg=w&sll=45.51029,-122.681675&sspn=0.005782,0.009023&ie=UTF8&ll=45.510091,-122.68232&spn=0.005782,0.009023&z=17 Map] from [http://cegs.pdx.edu/stay/upl/ University Place Hotel] to [http://www.pdx.edu/campus-map Cramer Hall].<br />
<br />
=== Student Participants ===<br />
<br />
*[[Student Presentation]]<br />
*[[Groups]] example of [[connections in groups]]<br />
*[[Terminology]]<br />
*[[Questions]]<br />
<br />
===Lectures and Planned Activities===<br />
<br />
For information about editing this page, see [[Wikipedia:How to edit]].<br />
<br />
{| border="1" cellpadding="5" cellspacing="0"<br />
|-valign="top" style="background:RoyalBlue"<br />
!width="20%"|Dates<br />
!width="25%"|Lecture Topics<br />
!width="15%"|Lecturers<br />
!width="25%"|Laboratory Topics<br />
!width="15%"|Laboratory Instructors <br />
|-valign="top" style="background:AliceBlue"<br />
| [[4-5 August]]<br />
| Introduction to and theoretical basis for ice sheet modeling. <br />
| Kees van der Veen, [[Nina Kirchner]] <br />
| [[Finite differencing|Finite differencing]] and [[Pragmatic Programming|pragmatic programming]] using Fortran[http://en.wikipedia.org/wiki/Fortran] 95...<br />
computing divergence and gradient...<br />
from conservation equation to matrix algebra...<br />
rheology and that which makes ice ice...<br />
simple, ideal models...<br />
that which makes ice-sheet modeling hard...<br />
| Gethin Williams, [[Ian Rutt]], [[Jesse Johnson]]<br />
|-valign="top" style="background:PowderBlue"<br />
| 6 August <br />
| [[Basal Conditions]], [[Data sets for ice sheet modeling]]<br />
| Alan Rempel, Slawek Tulaczyk and Ken Jezek<br />
| COMSOL Multiphysics<br />
| Olga Sergienko and Jesse Johnson<br />
|-valign="top" style="background:AliceBlue"<br />
| 7 August<br />
| The world of [[ice shelves]] and 'distributed stress-field solutions'. [[Modelling mountain glaciers]].<br />
| Todd Dupont, Olga Sergienko, and Brian Anderson<br />
| Linear Algebra of ice-sheet modeling, relaxation methods, finite-element methodology, solution of Laplace equation in arbitrary domain, creation of an ice-shelf flow-field model (snap shot of flow field), Models of the Ross Ice Shelf<br />
| Olga Sergienko and Todd Dupont<br />
<br />
|-valign="top" style="background:PowderBlue"<br />
| 8 August<br />
| [[Student Presentation]]<br />
| Modeling School Students<br />
| open work day with breakfast at 8 am & student presentation at 9 am<br />
| go to the farmer's market<br />
|-valign="top" style="background:AliceBlue"<br />
| 9 August<br />
| Free day; possible PDX tour<br />
|<br />
|<br />
|<br />
|-valign="top" style="background:PowderBlue"<br />
| 10 August<br />
| Excursion to Mt. Hood and [[Eliot Glacier field trip]]<br />
| Guided by [http://web.pdx.edu/~basagic/ Hassan Basagic]<br />
|<br />
|<br />
|-valign="top" style="background:AliceBlue"<br />
| 11 August<br />
| [[Quantifying model uncertainty]]<br />
| Charles Jackson and Patrick Heimbach<br />
| Uncertain lab, [[Dynamic response to the enhanced basal flow in the Greenland ice sheet]] Weli Wang<br />
| Charles Jackson, Patrick Heimbach, and Weli Wang<br />
|-valign="top" style="background:PowderBlue"<br />
| [[12-13 August]]<br />
| Introduction to Glimmer-CISM ([[Introduction to Glimmer I|Part I]], [[Introduction to Glimmer II|Part II]] and [[Glimmer-CISM|Part III]]); [[Higher order velocity schemes|Higher-order models]]<br />
| [[Ian Rutt]], [[Magnus Hagdorn]], [[Stephen Price]], Bill Lipscomb, [[Jesse Johnson]]<br />
| Software development and [[Adding a module to Glimmer I|creating a module for Glimmer]], [[representing and manipulating data]]. [[Grounding line treatments]], presented by Sophie Nowicki. [[Verifying ice sheet models]], presented by Aitbala Sargent<br />
| [[Ian Rutt]], [[Magnus Hagdorn]], Gethin Williams, Stephen Price, Bill Lipscomb, [[Jesse Johnson]]<br />
|-valign="top" style="background:AliceBlue"<br />
| 14 August<br />
| [[Coupling the Cryosphere to other Earth systems]]<br />
| Bill Lipscomb and [[Ian Rutt]]<br />
| Community Climate System Model (CCSM) Lab<br />
| Bill Lipscomb, [[Jesse Johnson]], Stephen Price and [[Ian Rutt]]<br />
|}<br />
<br />
====[[Typical Daily Schedule]]====<br />
<br />
===Resources===<br />
<br />
Additional student/instructor resources for the Summer School:<br />
* List of [[Computing Resources and Room Description]]<br />
* Details of [[Eliot Glacier field trip]]<br />
* An outline [[Reading List]]<br />
* [[Notes]] from daily lectures<br />
* Portland [[dining and brewpub suggestions]]<br />
* [[PDX afterhours]]<br />
<br />
===Application and Registration===<br />
''The window for receipt of student applications has closed. Thank you for your interest in the program. ''<br />
<br />
The registration fee for the course is US $350.<br />
<br />
===Funding Agencies===<br />
<br />
<br />
{|<br />
|-valign="top"<br />
|[[Image:iscu.jpg|300 px]]<br />
|[[Image:scar.jpg|150 px]]<br />
|-valign="top"<br />
|[[Image:wcrp.jpg|200 px]]<br />
|[[Image:nsf_logo.gif|300px]]<br />
|-valign="top"<br />
|[[Image:cresis.jpg|100 px]]<br />
|[[Image:cires.jpg|350 px]]<br />
|-valign="top"<br />
|[[Image:IASC_logo_07_RGB.jpg|100 px]]<br />
|}<br />
<br />
===Organizing Committee===<br />
Christina Hulbe, Jesse Johnson, Cornelis van der Veen</div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Modelling_mountain_glaciersModelling mountain glaciers2009-08-07T03:42:50Z<p>Brian anderson: </p>
<hr />
<div>[http://websrv.cs.umt.edu/isis/index.php/Image:Ismss_mountain_glaciers.pdf presentation]<br />
<br />
== Introduction ==<br />
<br />
<br />
The physics governing the behaviour of mountain glaciers is identical to that governing ice sheets - both in terms of the interactions between the atmosphere and the snow/ice surface and the physics of glacier flow. However the complex topography and steep slopes that characterise mountain areas mean that the surface mass balance and flow tend to be treated in slightly different ways.<br />
<br />
The evolution of an ice mass can be described<br />
<br />
<math>\frac{\partial H }{\partial t} = M - \nabla \cdot q</math><br />
<br />
where ''q'' is the ice flux and <math>M = M_{acc} + M_{abl}</math> is the mass balance. <math>M_{acc}</math> is the amount of accumulation, and <math>M_{abl}</math> the ablation.<br />
<br />
<br />
<br />
== Modelling mass balance ==<br />
<br />
Mass balance depends on the local climate of the glacier or ice sheet. As glaciers and ice sheets are often in remote areas this step can be difficult. Different ways of obtaining relevant climate data are:<br />
<br />
* single climate station combined with lapse rates<br />
* weighted average of mulitple stations<br />
* two-dimensional interpolation from multiple stations<br />
* downscaled reanalysis/GCM data<br />
* mesoscale atmospheric model output<br />
<br />
'''Modelling accumulation'''<br />
<br />
The interactions between the atmosphere and the snow/ice surface can be complex. The amount of snow that accumulates has high spatial variability in high-relief terrain which is difficult to model because of the influence of wind and avalanche transport. A scheme which captures the bulk effect of the processes that govern snow accumulation, if not the processes themselves, is to simply use a snow/rain threshold temperature <math>T_{snow}</math> (often ~ <math>1^oC</math>) combined with measured or modelled precipitation. The effect of wind and avalanche transport may be determined empirically.<br />
<br />
<br />
<math><br />
M_{acc} = \left\{ <br />
\begin{array}{l l}<br />
p \cdot f & \quad {if T \leq T_{snow}}\\<br />
0 & \quad {if T > T_{snow}}\\<br />
\end{array} \right.<br />
</math><br />
<br />
<br />
<br />
'''Modelling ablation'''<br />
<br />
The amount of snow and ice that melts is governed by the energy balance at the surface:<br />
<br />
<math>Q_m = I(1-\alpha) + L_{out} + L_{in} + Q_H + Q_E + Q_R + Q_G</math><br />
<br />
where <math>Q_m</math>, the energy available for melt, is balanced by<br />
<br />
*<math>I(1-\alpha)</math> the incoming solar radiation <math>I</math>, less the amount reflected from the snow/ice surface which is controlled by the surface albedo <math>\alpha</math><br />
*<math>L_{out}</math> the outgoing long-wave radiation<br />
*<math>L_{in}</math> the incoming long-wave radiation<br />
*<math>Q_H</math> the sensible heat flux<br />
*<math>Q_E</math> the latent heat flux<br />
*<math>Q_R</math> the rainfall heat flux<br />
*<math>Q_G</math> the subsurface (ground) heat flux<br />
<br />
All of these components can be calculated using empirical or theoretical relationships, and are often calculated at high temporal resolution (e.g. hourly). However, there is a large requirement for detailed climate data which can be hard to meet. See Hock (2005) for a detailed review of how these components are usually calculated.<br />
<br />
'''Positive Degree-day models'''<br />
<br />
Rather than a data intensive energy balance model, many studies use a simpler degree-day model to calculating surface melt. This approach relies on the strong statistical relationship between snow/ice melt and positive temperature sums. This relationship holds even when, as in continental areas, the energy balance is dominated by radiation. The only input data required are temperature.<br />
<br />
<math>M_{abl}= \sum_{}^{} T_{pos}\cdot f</math><br />
<br />
The positive temperature sum PDD is typically calculated monthly (using daily data or an assumption about the distribution of temperature within the month) by summing positive temperatures. A different degree-day factor <math>f</math> is used for snow and ice surfaces, reflecting the different albedo and surface roughness characteristics.<br />
<br />
== Modelling glacier flow ==<br />
<br />
While the equations of glacier flow are the same for mountain glaciers as for ice sheets, there are some important differences in the way that they are applied. For example, the thermodynamics of glaciers in temperate areas is usually neglected and a constant ice deformation factor is used. However, the shallow ice approximation which is commonly used in an ice sheet setting is not valid for the majority of mountain glaciers with their steep bed slopes and high aspect ratio. Various types of models have been applied to mountain glaciers to understand the link between climate and glacier response, from simplified analytical models (e.g. Klok and Oerlemans, 2003), one-dimensional flowline models (e.g. Oerlemans, 1997), two-dimensional SIA models (e.g. Plummer and Phillips, 2003), and two-dimensional models with longitudinal stresses (e.g. Golledge and hubbard, 2005).<br />
<br />
<br />
<br />
'''References'''<br />
<br />
Golledge, N. R., and A. Hubbard. 2005. Evaluating Younger Dryas glacier reconstructions in part of the western Scottish Highlands: a combined empirical and theoretical approach. Boreas 34 (August): 274-286. doi:10.1080/03009480510013024.<br />
<br />
Hock, Regine. 2005. Glacier melt: a review of processes and their modelling. Progress in Physical Geography 29, no. 3: 362-391. doi:10.1191/0309133305pp453ra.<br />
<br />
Klok, E. J., and J. Oerlemans. 2003. Deriving historical equilibrium-line altitudes from a glacier length record by linear inverse modelling. The Holocene 13, no. 3: 343-351. doi:10.1191/0959683603hl627rp.<br />
<br />
Oerlemans, J. 1997. A flowline model for Nigardsbreen, Norway: Projection of future glacier length based on dynamic calibration with the historic record. Annals of Glaciology 24: 382-389.<br />
<br />
Plummer, Mitchell A., and Fred M. Phillips. 2003. A 2-D numerical model of snow/ice energy balance and ice flow for paleoclimatic interpretation of glacial geomorphic features. Quaternary Science Reviews 22, no. 14: 1389-1406. doi:10.1016/S0277-3791(03)00081-7.</div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Modelling_mountain_glaciersModelling mountain glaciers2009-08-07T03:39:30Z<p>Brian anderson: </p>
<hr />
<div>== Talk ==<br />
<br />
[[Media:ismss_mountain_glaciers.pdf]]<br />
<br />
== Introduction ==<br />
<br />
<br />
The physics governing the behaviour of mountain glaciers is identical to that governing ice sheets - both in terms of the interactions between the atmosphere and the snow/ice surface and the physics of glacier flow. However the complex topography and steep slopes that characterise mountain areas mean that the surface mass balance and flow tend to be treated in slightly different ways.<br />
<br />
The evolution of an ice mass can be described<br />
<br />
<math>\frac{\partial H }{\partial t} = M - \nabla \cdot q</math><br />
<br />
where ''q'' is the ice flux and <math>M = M_{acc} + M_{abl}</math> is the mass balance. <math>M_{acc}</math> is the amount of accumulation, and <math>M_{abl}</math> the ablation.<br />
<br />
<br />
<br />
== Modelling mass balance ==<br />
<br />
Mass balance depends on the local climate of the glacier or ice sheet. As glaciers and ice sheets are often in remote areas this step can be difficult. Different ways of obtaining relevant climate data are:<br />
<br />
* single climate station combined with lapse rates<br />
* weighted average of mulitple stations<br />
* two-dimensional interpolation from multiple stations<br />
* downscaled reanalysis/GCM data<br />
* mesoscale atmospheric model output<br />
<br />
'''Modelling accumulation'''<br />
<br />
The interactions between the atmosphere and the snow/ice surface can be complex. The amount of snow that accumulates has high spatial variability in high-relief terrain which is difficult to model because of the influence of wind and avalanche transport. A scheme which captures the bulk effect of the processes that govern snow accumulation, if not the processes themselves, is to simply use a snow/rain threshold temperature <math>T_{snow}</math> (often ~ <math>1^oC</math>) combined with measured or modelled precipitation. The effect of wind and avalanche transport may be determined empirically.<br />
<br />
<br />
<math><br />
M_{acc} = \left\{ <br />
\begin{array}{l l}<br />
p \cdot f & \quad {if T \leq T_{snow}}\\<br />
0 & \quad {if T > T_{snow}}\\<br />
\end{array} \right.<br />
</math><br />
<br />
<br />
<br />
'''Modelling ablation'''<br />
<br />
The amount of snow and ice that melts is governed by the energy balance at the surface:<br />
<br />
<math>Q_m = I(1-\alpha) + L_{out} + L_{in} + Q_H + Q_E + Q_R + Q_G</math><br />
<br />
where <math>Q_m</math>, the energy available for melt, is balanced by<br />
<br />
*<math>I(1-\alpha)</math> the incoming solar radiation <math>I</math>, less the amount reflected from the snow/ice surface which is controlled by the surface albedo <math>\alpha</math><br />
*<math>L_{out}</math> the outgoing long-wave radiation<br />
*<math>L_{in}</math> the incoming long-wave radiation<br />
*<math>Q_H</math> the sensible heat flux<br />
*<math>Q_E</math> the latent heat flux<br />
*<math>Q_R</math> the rainfall heat flux<br />
*<math>Q_G</math> the subsurface (ground) heat flux<br />
<br />
All of these components can be calculated using empirical or theoretical relationships, and are often calculated at high temporal resolution (e.g. hourly). However, there is a large requirement for detailed climate data which can be hard to meet. See Hock (2005) for a detailed review of how these components are usually calculated.<br />
<br />
'''Positive Degree-day models'''<br />
<br />
Rather than a data intensive energy balance model, many studies use a simpler degree-day model to calculating surface melt. This approach relies on the strong statistical relationship between snow/ice melt and positive temperature sums. This relationship holds even when, as in continental areas, the energy balance is dominated by radiation. The only input data required are temperature.<br />
<br />
<math>M_{abl}= \sum_{}^{} T_{pos}\cdot f</math><br />
<br />
The positive temperature sum PDD is typically calculated monthly (using daily data or an assumption about the distribution of temperature within the month) by summing positive temperatures. A different degree-day factor <math>f</math> is used for snow and ice surfaces, reflecting the different albedo and surface roughness characteristics.<br />
<br />
== Modelling glacier flow ==<br />
<br />
While the equations of glacier flow are the same for mountain glaciers as for ice sheets, there are some important differences in the way that they are applied. For example, the thermodynamics of glaciers in temperate areas is usually neglected and a constant ice deformation factor is used. However, the shallow ice approximation which is commonly used in an ice sheet setting is not valid for the majority of mountain glaciers with their steep bed slopes and high aspect ratio. Various types of models have been applied to mountain glaciers to understand the link between climate and glacier response, from simplified analytical models (e.g. Klok and Oerlemans, 2003), one-dimensional flowline models (e.g. Oerlemans, 1997), two-dimensional SIA models (e.g. Plummer and Phillips, 2003), and two-dimensional models with longitudinal stresses (e.g. Golledge and hubbard, 2005).<br />
<br />
<br />
<br />
'''References'''<br />
<br />
Golledge, N. R., and A. Hubbard. 2005. Evaluating Younger Dryas glacier reconstructions in part of the western Scottish Highlands: a combined empirical and theoretical approach. Boreas 34 (August): 274-286. doi:10.1080/03009480510013024.<br />
<br />
Hock, Regine. 2005. Glacier melt: a review of processes and their modelling. Progress in Physical Geography 29, no. 3: 362-391. doi:10.1191/0309133305pp453ra.<br />
<br />
Klok, E. J., and J. Oerlemans. 2003. Deriving historical equilibrium-line altitudes from a glacier length record by linear inverse modelling. The Holocene 13, no. 3: 343-351. doi:10.1191/0959683603hl627rp.<br />
<br />
Oerlemans, J. 1997. A flowline model for Nigardsbreen, Norway: Projection of future glacier length based on dynamic calibration with the historic record. Annals of Glaciology 24: 382-389.<br />
<br />
Plummer, Mitchell A., and Fred M. Phillips. 2003. A 2-D numerical model of snow/ice energy balance and ice flow for paleoclimatic interpretation of glacial geomorphic features. Quaternary Science Reviews 22, no. 14: 1389-1406. doi:10.1016/S0277-3791(03)00081-7.</div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/File:Ismss_mountain_glaciers.pdfFile:Ismss mountain glaciers.pdf2009-08-07T03:38:06Z<p>Brian anderson: </p>
<hr />
<div></div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Modelling_mountain_glaciersModelling mountain glaciers2009-08-07T03:04:04Z<p>Brian anderson: </p>
<hr />
<div>== Introduction ==<br />
<br />
<br />
The physics governing the behaviour of mountain glaciers is identical to that governing ice sheets - both in terms of the interactions between the atmosphere and the snow/ice surface and the physics of glacier flow. However the complex topography and steep slopes that characterise mountain areas mean that the surface mass balance and flow tend to be treated in slightly different ways.<br />
<br />
The evolution of an ice mass can be described<br />
<br />
<math>\frac{\partial H }{\partial t} = M - \nabla \cdot q</math><br />
<br />
where ''q'' is the ice flux and <math>M = M_{acc} + M_{abl}</math> is the mass balance. <math>M_{acc}</math> is the amount of accumulation, and <math>M_{abl}</math> the ablation.<br />
<br />
<br />
<br />
== Modelling mass balance ==<br />
<br />
Mass balance depends on the local climate of the glacier or ice sheet. As glaciers and ice sheets are often in remote areas this step can be difficult. Different ways of obtaining relevant climate data are:<br />
<br />
* single climate station combined with lapse rates<br />
* weighted average of mulitple stations<br />
* two-dimensional interpolation from multiple stations<br />
* downscaled reanalysis/GCM data<br />
* mesoscale atmospheric model output<br />
<br />
'''Modelling accumulation'''<br />
<br />
The interactions between the atmosphere and the snow/ice surface can be complex. The amount of snow that accumulates has high spatial variability in high-relief terrain which is difficult to model because of the influence of wind and avalanche transport. A scheme which captures the bulk effect of the processes that govern snow accumulation, if not the processes themselves, is to simply use a snow/rain threshold temperature <math>T_{snow}</math> (often ~ <math>1^oC</math>) combined with measured or modelled precipitation. The effect of wind and avalanche transport may be determined empirically.<br />
<br />
<br />
<math><br />
M_{acc} = \left\{ <br />
\begin{array}{l l}<br />
p \cdot f & \quad {if T \leq T_{snow}}\\<br />
0 & \quad {if T > T_{snow}}\\<br />
\end{array} \right.<br />
</math><br />
<br />
<br />
<br />
'''Modelling ablation'''<br />
<br />
The amount of snow and ice that melts is governed by the energy balance at the surface:<br />
<br />
<math>Q_m = I(1-\alpha) + L_{out} + L_{in} + Q_H + Q_E + Q_R + Q_G</math><br />
<br />
where <math>Q_m</math>, the energy available for melt, is balanced by<br />
<br />
*<math>I(1-\alpha)</math> the incoming solar radiation <math>I</math>, less the amount reflected from the snow/ice surface which is controlled by the surface albedo <math>\alpha</math><br />
*<math>L_{out}</math> the outgoing long-wave radiation<br />
*<math>L_{in}</math> the incoming long-wave radiation<br />
*<math>Q_H</math> the sensible heat flux<br />
*<math>Q_E</math> the latent heat flux<br />
*<math>Q_R</math> the rainfall heat flux<br />
*<math>Q_G</math> the subsurface (ground) heat flux<br />
<br />
All of these components can be calculated using empirical or theoretical relationships, and are often calculated at high temporal resolution (e.g. hourly). However, there is a large requirement for detailed climate data which can be hard to meet. See Hock (2005) for a detailed review of how these components are usually calculated.<br />
<br />
'''Positive Degree-day models'''<br />
<br />
Rather than a data intensive energy balance model, many studies use a simpler degree-day model to calculating surface melt. This approach relies on the strong statistical relationship between snow/ice melt and positive temperature sums. This relationship holds even when, as in continental areas, the energy balance is dominated by radiation. The only input data required are temperature.<br />
<br />
<math>M_{abl}= \sum_{}^{} T_{pos}\cdot f</math><br />
<br />
The positive temperature sum PDD is typically calculated monthly (using daily data or an assumption about the distribution of temperature within the month) by summing positive temperatures. A different degree-day factor <math>f</math> is used for snow and ice surfaces, reflecting the different albedo and surface roughness characteristics.<br />
<br />
== Modelling glacier flow ==<br />
<br />
While the equations of glacier flow are the same for mountain glaciers as for ice sheets, there are some important differences in the way that they are applied. For example, the thermodynamics of glaciers in temperate areas is usually neglected and a constant ice deformation factor is used. However, the shallow ice approximation which is commonly used in an ice sheet setting is not valid for the majority of mountain glaciers with their steep bed slopes and high aspect ratio. Various types of models have been applied to mountain glaciers to understand the link between climate and glacier response, from simplified analytical models (e.g. Klok and Oerlemans, 2003), one-dimensional flowline models (e.g. Oerlemans, 1997), two-dimensional SIA models (e.g. Plummer and Phillips, 2003), and two-dimensional models with longitudinal stresses (e.g. Golledge and hubbard, 2005).<br />
<br />
<br />
<br />
'''References'''<br />
<br />
Golledge, N. R., and A. Hubbard. 2005. Evaluating Younger Dryas glacier reconstructions in part of the western Scottish Highlands: a combined empirical and theoretical approach. Boreas 34 (August): 274-286. doi:10.1080/03009480510013024.<br />
<br />
Hock, Regine. 2005. Glacier melt: a review of processes and their modelling. Progress in Physical Geography 29, no. 3: 362-391. doi:10.1191/0309133305pp453ra.<br />
<br />
Klok, E. J., and J. Oerlemans. 2003. Deriving historical equilibrium-line altitudes from a glacier length record by linear inverse modelling. The Holocene 13, no. 3: 343-351. doi:10.1191/0959683603hl627rp.<br />
<br />
Oerlemans, J. 1997. A flowline model for Nigardsbreen, Norway: Projection of future glacier length based on dynamic calibration with the historic record. Annals of Glaciology 24: 382-389.<br />
<br />
Plummer, Mitchell A., and Fred M. Phillips. 2003. A 2-D numerical model of snow/ice energy balance and ice flow for paleoclimatic interpretation of glacial geomorphic features. Quaternary Science Reviews 22, no. 14: 1389-1406. doi:10.1016/S0277-3791(03)00081-7.</div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Modelling_mountain_glaciersModelling mountain glaciers2009-08-07T03:03:37Z<p>Brian anderson: </p>
<hr />
<div>== Introduction ==<br />
<br />
<br />
The physics governing the behaviour of mountain glaciers is identical to that governing ice sheets - both in terms of the interactions between the atmosphere and the snow/ice surface and the physics of glacier flow. However the complex topography and steep slopes that characterise mountain areas mean that the surface mass balance and flow tend to be treated in slightly different ways.<br />
<br />
The evolution of an ice mass can be described<br />
<br />
<math>\frac{\partial H }{\partial t} = M - \nabla \cdot q</math><br />
<br />
where ''q'' is the ice flux and <math>M = M_{acc} + M_{abl}</math> is the mass balance. <math>M_{acc}</math> is the amount of accumulation, and <math>M_{abl}</math> the ablation.<br />
<br />
<br />
<br />
== Modelling mass balance ==<br />
<br />
Mass balance depends on the local climate of the glacier or ice sheet. As glaciers and ice sheets are often in remote areas this step can be difficult. Different ways of obtaining relevant climate data are:<br />
<br />
* single climate station combined with lapse rates<br />
* weighted average of mulitple stations<br />
* two-dimensional interpolation from multiple stations<br />
* downscaled reanalysis/GCM data<br />
* mesoscale atmospheric model output<br />
<br />
'''Modelling accumulation'''<br />
<br />
The interactions between the atmosphere and the snow/ice surface can be complex. The amount of snow that accumulates has high spatial variability in high-relief terrain which is difficult to model because of the influence of wind and avalanche transport. A scheme which captures the bulk effect of the processes that govern snow accumulation, if not the processes themselves, is to simply use a snow/rain threshold temperature <math>T_{snow}</math> (often ~ <math>1^oC</math>) combined with measured or modelled precipitation. The effect of wind and avalanche transport may be determined empirically.<br />
<br />
<br />
<math><br />
M_{acc} = \left\{ <br />
\begin{array}{l l}<br />
p \cdot f & \quad {if T \leq T_{snow}}\\<br />
0 & \quad {if T > T_{snow}}\\<br />
\end{array} \right.<br />
</math><br />
<br />
<br />
<br />
'''Modelling ablation'''<br />
<br />
The amount of snow and ice that melts is governed by the energy balance at the surface:<br />
<br />
<math>Q_m = I(1-\alpha) + L_{out} + L_{in} + Q_H + Q_E + Q_R + Q_G</math><br />
<br />
where <math>Q_m</math>, the energy available for melt, is balanced by<br />
<br />
*<math>I(1-\alpha)</math> the incoming solar radiation <math>I</math>, less the amount reflected from the snow/ice surface which is controlled by the surface albedo <math>\alpha</math><br />
*<math>L_{out}</math> the outgoing long-wave radiation<br />
*<math>L_{in}</math> the incoming long-wave radiation<br />
*<math>Q_H</math> the sensible heat flux<br />
*<math>Q_E</math> the latent heat flux<br />
*<math>Q_R</math> the rainfall heat flux<br />
*<math>Q_G</math> the subsurface (ground) heat flux<br />
<br />
All of these components can be calculated using empirical or theoretical relationships, and are often calculated at high temporal resolution (e.g. hourly). However, there is a large requirement for detailed climate data which can be hard to meet. See Hock (2005) for a detailed review of how these components are usually calculated.<br />
<br />
'''Positive Degree-day models'''<br />
<br />
Rather than a data intensive energy balance model, many studies use a simpler degree-day model to calculating surface melt. This approach relies on the strong statistical relationship between snow/ice melt and positive temperature sums. This relationship holds even when, as in continental areas, the energy balance is dominated by radiation. The only input data required are temperature.<br />
<br />
<math>M_{abl}=PDD\cdot f= \sum_{}^{} T_{pos}\cdot f</math><br />
<br />
The positive temperature sum PDD is typically calculated monthly (using daily data or an assumption about the distribution of temperature within the month) by summing positive temperatures. A different degree-day factor <math>f</math> is used for snow and ice surfaces, reflecting the different albedo and surface roughness characteristics.<br />
<br />
== Modelling glacier flow ==<br />
<br />
While the equations of glacier flow are the same for mountain glaciers as for ice sheets, there are some important differences in the way that they are applied. For example, the thermodynamics of glaciers in temperate areas is usually neglected and a constant ice deformation factor is used. However, the shallow ice approximation which is commonly used in an ice sheet setting is not valid for the majority of mountain glaciers with their steep bed slopes and high aspect ratio. Various types of models have been applied to mountain glaciers to understand the link between climate and glacier response, from simplified analytical models (e.g. Klok and Oerlemans, 2003), one-dimensional flowline models (e.g. Oerlemans, 1997), two-dimensional SIA models (e.g. Plummer and Phillips, 2003), and two-dimensional models with longitudinal stresses (e.g. Golledge and hubbard, 2005).<br />
<br />
<br />
<br />
'''References'''<br />
<br />
Golledge, N. R., and A. Hubbard. 2005. Evaluating Younger Dryas glacier reconstructions in part of the western Scottish Highlands: a combined empirical and theoretical approach. Boreas 34 (August): 274-286. doi:10.1080/03009480510013024.<br />
<br />
Hock, Regine. 2005. Glacier melt: a review of processes and their modelling. Progress in Physical Geography 29, no. 3: 362-391. doi:10.1191/0309133305pp453ra.<br />
<br />
Klok, E. J., and J. Oerlemans. 2003. Deriving historical equilibrium-line altitudes from a glacier length record by linear inverse modelling. The Holocene 13, no. 3: 343-351. doi:10.1191/0959683603hl627rp.<br />
<br />
Oerlemans, J. 1997. A flowline model for Nigardsbreen, Norway: Projection of future glacier length based on dynamic calibration with the historic record. Annals of Glaciology 24: 382-389.<br />
<br />
Plummer, Mitchell A., and Fred M. Phillips. 2003. A 2-D numerical model of snow/ice energy balance and ice flow for paleoclimatic interpretation of glacial geomorphic features. Quaternary Science Reviews 22, no. 14: 1389-1406. doi:10.1016/S0277-3791(03)00081-7.</div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Modelling_mountain_glaciersModelling mountain glaciers2009-08-07T03:02:51Z<p>Brian anderson: </p>
<hr />
<div>== Introduction ==<br />
<br />
<br />
The physics governing the behaviour of mountain glaciers is identical to that governing ice sheets - both in terms of the interactions between the atmosphere and the snow/ice surface and the physics of glacier flow. However the complex topography and steep slopes that characterise mountain areas mean that the surface mass balance and flow tend to be treated in slightly different ways.<br />
<br />
The evolution of an ice mass can be described<br />
<br />
<math>\frac{\partial H }{\partial t} = M - \nabla \cdot q</math><br />
<br />
where ''q'' is the ice flux and <math>M = M_{acc} + M_{abl}</math> is the mass balance. <math>M_{acc}</math> is the amount of accumulation, and <math>M_{abl}</math> the ablation.<br />
<br />
<br />
<br />
== Modelling mass balance ==<br />
<br />
Mass balance depends on the local climate of the glacier or ice sheet. As glaciers and ice sheets are often in remote areas this step can be difficult. Different ways of obtaining relevant climate data are:<br />
<br />
* single climate station combined with lapse rates<br />
* weighted average of mulitple stations<br />
* two-dimensional interpolation from multiple stations<br />
* downscaled reanalysis/GCM data<br />
* mesoscale atmospheric model output<br />
<br />
'''Modelling accumulation'''<br />
<br />
The interactions between the atmosphere and the snow/ice surface can be complex. The amount of snow that accumulates has high spatial variability in high-relief terrain which is difficult to model because of the influence of wind and avalanche transport. A scheme which captures the bulk effect of the processes that govern snow accumulation, if not the processes themselves, is to simply use a snow/rain threshold temperature <math>T_{snow}</math> (often ~ <math>1^oC</math>) combined with measured or modelled precipitation. The effect of wind and avalanche transport may be determined empirically.<br />
<br />
<br />
<math><br />
M_{acc} = \left\{ <br />
\begin{array}{l l}<br />
p \cdot f & \quad {if T \leq T_{snow}}\\<br />
0 & \quad {if T > T_{snow}}\\<br />
\end{array} \right.<br />
</math><br />
<br />
<br />
<br />
'''Modelling ablation'''<br />
<br />
The amount of snow and ice that melts is governed by the energy balance at the surface:<br />
<br />
<math>Q_m = I(1-\alpha) + L_{out} + L_{in} + Q_H + Q_E + Q_R + Q_G</math><br />
<br />
where <math>Q_m</math>, the energy available for melt, is balanced by<br />
<br />
*<math>I(1-\alpha)</math> the incoming solar radiation <math>I</math>, less the amount reflected from the snow/ice surface which is controlled by the surface albedo <math>\alpha</math><br />
*<math>L_{out}</math> the outgoing long-wave radiation<br />
*<math>L_{in}</math> the incoming long-wave radiation<br />
*<math>Q_H</math> the sensible heat flux<br />
*<math>Q_E</math> the latent heat flux<br />
*<math>Q_R</math> the rainfall heat flux<br />
*<math>Q_G</math> the subsurface (ground) heat flux<br />
<br />
All of these components can be calculated using empirical or theoretical relationships, and are often calculated at high temporal resolution (e.g. hourly). However, there is a large requirement for detailed climate data which can be hard to meet. See Hock (2005) for a detailed review of how these components are usually calculated.<br />
<br />
'''Positive Degree-day models'''<br />
<br />
Rather than a data intensive energy balance model, many studies use a simpler degree-day model to calculating surface melt. This approach relies on the strong statistical relationship between snow/ice melt and positive temperature sums. This relationship holds even when, as in continental areas, the energy balance is dominated by radiation. The only input data required are temperature.<br />
<br />
<math>M_{abl}=PDD\cdot f= \sum_{}^{} [T_{pos}\cdot f]</math><br />
<br />
The positive temperature sum PDD is typically calculated monthly (using daily data or an assumption about the distribution of temperature within the month) by summing positive temperatures. A different degree-day factor <math>f</math> is used for snow and ice surfaces, reflecting the different albedo and surface roughness characteristics.<br />
<br />
== Modelling glacier flow ==<br />
<br />
While the equations of glacier flow are the same for mountain glaciers as for ice sheets, there are some important differences in the way that they are applied. For example, the thermodynamics of glaciers in temperate areas is usually neglected and a constant ice deformation factor is used. However, the shallow ice approximation which is commonly used in an ice sheet setting is not valid for the majority of mountain glaciers with their steep bed slopes and high aspect ratio. Various types of models have been applied to mountain glaciers to understand the link between climate and glacier response, from simplified analytical models (e.g. Klok and Oerlemans, 2003), one-dimensional flowline models (e.g. Oerlemans, 1997), two-dimensional SIA models (e.g. Plummer and Phillips, 2003), and two-dimensional models with longitudinal stresses (e.g. Golledge and hubbard, 2005).<br />
<br />
<br />
<br />
'''References'''<br />
<br />
Golledge, N. R., and A. Hubbard. 2005. Evaluating Younger Dryas glacier reconstructions in part of the western Scottish Highlands: a combined empirical and theoretical approach. Boreas 34 (August): 274-286. doi:10.1080/03009480510013024.<br />
<br />
Hock, Regine. 2005. Glacier melt: a review of processes and their modelling. Progress in Physical Geography 29, no. 3: 362-391. doi:10.1191/0309133305pp453ra.<br />
<br />
Klok, E. J., and J. Oerlemans. 2003. Deriving historical equilibrium-line altitudes from a glacier length record by linear inverse modelling. The Holocene 13, no. 3: 343-351. doi:10.1191/0959683603hl627rp.<br />
<br />
Oerlemans, J. 1997. A flowline model for Nigardsbreen, Norway: Projection of future glacier length based on dynamic calibration with the historic record. Annals of Glaciology 24: 382-389.<br />
<br />
Plummer, Mitchell A., and Fred M. Phillips. 2003. A 2-D numerical model of snow/ice energy balance and ice flow for paleoclimatic interpretation of glacial geomorphic features. Quaternary Science Reviews 22, no. 14: 1389-1406. doi:10.1016/S0277-3791(03)00081-7.</div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Modelling_mountain_glaciersModelling mountain glaciers2009-08-06T04:01:33Z<p>Brian anderson: </p>
<hr />
<div>== Introduction ==<br />
<br />
<br />
The physics governing the behaviour of mountain glaciers is identical to that governing ice sheets - both in terms of the interactions between the atmosphere and the snow/ice surface and the physics of glacier flow. However the complex topography and steep slopes that characterise mountain areas mean that the surface mass balance and flow tend to be treated in slightly different ways.<br />
<br />
The evolution of an ice mass can be described<br />
<br />
<math>\frac{\partial H }{\partial t} = M - \nabla \cdot q</math><br />
<br />
where ''q'' is the ice flux and <math>M = M_{acc} + M_{abl}</math> is the mass balance. <math>M_{acc}</math> is the amount of accumulation, and <math>M_{abl}</math> the ablation.<br />
<br />
<br />
<br />
== Modelling mass balance ==<br />
<br />
Mass balance depends on the local climate of the glacier or ice sheet. As glaciers and ice sheets are often in remote areas this step can be difficult. Different ways of obtaining relevant climate data are:<br />
<br />
* single climate station combined with lapse rates<br />
* weighted average of mulitple stations<br />
* two-dimensional interpolation from multiple stations<br />
* downscaled reanalysis/GCM data<br />
* mesoscale atmospheric model output<br />
<br />
'''Modelling accumulation'''<br />
<br />
The interactions between the atmosphere and the snow/ice surface can be complex. The amount of snow that accumulates has high spatial variability in high-relief terrain which is difficult to model because of the influence of wind and avalanche transport. A scheme which captures the bulk effect of the processes that govern snow accumulation, if not the processes themselves, is to simply use a snow/rain threshold temperature <math>T_{snow}</math> (often ~ <math>1^oC</math>) combined with measured or modelled precipitation. The effect of wind and avalanche transport may be determined empirically.<br />
<br />
<br />
<math><br />
M_{acc} = \left\{ <br />
\begin{array}{l l}<br />
p \cdot f & \quad {if T \leq T_{snow}}\\<br />
0 & \quad {if T > T_{snow}}\\<br />
\end{array} \right.<br />
</math><br />
<br />
<br />
<br />
'''Modelling ablation'''<br />
<br />
The amount of snow and ice that melts is governed by the energy balance at the surface:<br />
<br />
<math>Q_m = I(1-\alpha) + L_{out} + L_{in} + Q_H + Q_E + Q_R + Q_G</math><br />
<br />
where <math>Q_m</math>, the energy available for melt, is balanced by<br />
<br />
*<math>I(1-\alpha)</math> the incoming solar radiation <math>I</math>, less the amount reflected from the snow/ice surface which is controlled by the surface albedo <math>\alpha</math><br />
*<math>L_{out}</math> the outgoing long-wave radiation<br />
*<math>L_{in}</math> the incoming long-wave radiation<br />
*<math>Q_H</math> the sensible heat flux<br />
*<math>Q_E</math> the latent heat flux<br />
*<math>Q_R</math> the rainfall heat flux<br />
*<math>Q_G</math> the subsurface (ground) heat flux<br />
<br />
All of these components can be calculated using empirical or theoretical relationships, and are often calculated at high temporal resolution (e.g. hourly). However, there is a large requirement for detailed climate data which can be hard to meet. See Hock (2005) for a detailed review of how these components are usually calculated.<br />
<br />
'''Positive Degree-day models'''<br />
<br />
Rather than a data intensive energy balance model, many studies use a simpler degree-day model to calculating surface melt. This approach relies on the strong statistical relationship between snow/ice melt and positive temperature sums. This relationship holds even when, as in continental areas, the energy balance is dominated by radiation. The only input data required are temperature.<br />
<br />
<math>M_{abl}=\sum_{}^{} [PDD\cdot f]</math><br />
<br />
The positive temperature sum PDD is typically calculated monthly (using daily data or an assumption about the distribution of temperature within the month). A different degree-day factor <math>f</math> is used for snow and ice surfaces, reflecting the different albedo and surface roughness characteristics.<br />
<br />
== Modelling glacier flow ==<br />
<br />
While the equations of glacier flow are the same for mountain glaciers as for ice sheets, there are some important differences in the way that they are applied. For example, the thermodynamics of glaciers in temperate areas is usually neglected and a constant ice deformation factor is used. However, the shallow ice approximation which is commonly used in an ice sheet setting is not valid for the majority of mountain glaciers with their steep bed slopes and high aspect ratio. Various types of models have been applied to mountain glaciers to understand the link between climate and glacier response, from simplified analytical models (e.g. Klok and Oerlemans, 2003), one-dimensional flowline models (e.g. Oerlemans, 1997), two-dimensional SIA models (e.g. Plummer and Phillips, 2003), and two-dimensional models with longitudinal stresses (e.g. Golledge and hubbard, 2005).<br />
<br />
<br />
<br />
'''References'''<br />
<br />
Golledge, N. R., and A. Hubbard. 2005. Evaluating Younger Dryas glacier reconstructions in part of the western Scottish Highlands: a combined empirical and theoretical approach. Boreas 34 (August): 274-286. doi:10.1080/03009480510013024.<br />
<br />
Hock, Regine. 2005. Glacier melt: a review of processes and their modelling. Progress in Physical Geography 29, no. 3: 362-391. doi:10.1191/0309133305pp453ra.<br />
<br />
Klok, E. J., and J. Oerlemans. 2003. Deriving historical equilibrium-line altitudes from a glacier length record by linear inverse modelling. The Holocene 13, no. 3: 343-351. doi:10.1191/0959683603hl627rp.<br />
<br />
Oerlemans, J. 1997. A flowline model for Nigardsbreen, Norway: Projection of future glacier length based on dynamic calibration with the historic record. Annals of Glaciology 24: 382-389.<br />
<br />
Plummer, Mitchell A., and Fred M. Phillips. 2003. A 2-D numerical model of snow/ice energy balance and ice flow for paleoclimatic interpretation of glacial geomorphic features. Quaternary Science Reviews 22, no. 14: 1389-1406. doi:10.1016/S0277-3791(03)00081-7.</div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Modelling_mountain_glaciersModelling mountain glaciers2009-08-06T04:00:43Z<p>Brian anderson: </p>
<hr />
<div>== Introduction ==<br />
<br />
<br />
The physics governing the behaviour of mountain glaciers is identical to that governing ice sheets - both in terms of the interactions between the atmosphere and the snow/ice surface and the physics of glacier flow. However the complex topography and steep slopes that characterise mountain areas mean that the surface mass balance and flow tend to be treated in slightly different ways.<br />
<br />
The evolution of an ice mass can be described<br />
<br />
<math>\frac{\partial H }{\partial t} = \nabla \cdot q - M</math><br />
<br />
where ''q'' is the ice flux and <math>M = M_{acc} + M_{abl}</math> is the mass balance. <math>M_{acc}</math> is the amount of accumulation, and <math>M_{abl}</math> the ablation.<br />
<br />
<br />
<br />
== Modelling mass balance ==<br />
<br />
Mass balance depends on the local climate of the glacier or ice sheet. As glaciers and ice sheets are often in remote areas this step can be difficult. Different ways of obtaining relevant climate data are:<br />
<br />
* single climate station combined with lapse rates<br />
* weighted average of mulitple stations<br />
* two-dimensional interpolation from multiple stations<br />
* downscaled reanalysis/GCM data<br />
* mesoscale atmospheric model output<br />
<br />
'''Modelling accumulation'''<br />
<br />
The interactions between the atmosphere and the snow/ice surface can be complex. The amount of snow that accumulates has high spatial variability in high-relief terrain which is difficult to model because of the influence of wind and avalanche transport. A scheme which captures the bulk effect of the processes that govern snow accumulation, if not the processes themselves, is to simply use a snow/rain threshold temperature <math>T_{snow}</math> (often ~ <math>1^oC</math>) combined with measured or modelled precipitation. The effect of wind and avalanche transport may be determined empirically.<br />
<br />
<br />
<math><br />
M_{acc} = \left\{ <br />
\begin{array}{l l}<br />
p \cdot f & \quad {if T \leq T_{snow}}\\<br />
0 & \quad {if T > T_{snow}}\\<br />
\end{array} \right.<br />
</math><br />
<br />
<br />
<br />
'''Modelling ablation'''<br />
<br />
The amount of snow and ice that melts is governed by the energy balance at the surface:<br />
<br />
<math>Q_m = I(1-\alpha) + L_{out} + L_{in} + Q_H + Q_E + Q_R + Q_G</math><br />
<br />
where <math>Q_m</math>, the energy available for melt, is balanced by<br />
<br />
*<math>I(1-\alpha)</math> the incoming solar radiation <math>I</math>, less the amount reflected from the snow/ice surface which is controlled by the surface albedo <math>\alpha</math><br />
*<math>L_{out}</math> the outgoing long-wave radiation<br />
*<math>L_{in}</math> the incoming long-wave radiation<br />
*<math>Q_H</math> the sensible heat flux<br />
*<math>Q_E</math> the latent heat flux<br />
*<math>Q_R</math> the rainfall heat flux<br />
*<math>Q_G</math> the subsurface (ground) heat flux<br />
<br />
All of these components can be calculated using empirical or theoretical relationships, and are often calculated at high temporal resolution (e.g. hourly). However, there is a large requirement for detailed climate data which can be hard to meet. See Hock (2005) for a detailed review of how these components are usually calculated.<br />
<br />
'''Positive Degree-day models'''<br />
<br />
Rather than a data intensive energy balance model, many studies use a simpler degree-day model to calculating surface melt. This approach relies on the strong statistical relationship between snow/ice melt and positive temperature sums. This relationship holds even when, as in continental areas, the energy balance is dominated by radiation. The only input data required are temperature.<br />
<br />
<math>M_{abl}=\sum_{}^{} [PDD\cdot f]</math><br />
<br />
The positive temperature sum PDD is typically calculated monthly (using daily data or an assumption about the distribution of temperature within the month). A different degree-day factor <math>f</math> is used for snow and ice surfaces, reflecting the different albedo and surface roughness characteristics.<br />
<br />
== Modelling glacier flow ==<br />
<br />
While the equations of glacier flow are the same for mountain glaciers as for ice sheets, there are some important differences in the way that they are applied. For example, the thermodynamics of glaciers in temperate areas is usually neglected and a constant ice deformation factor is used. However, the shallow ice approximation which is commonly used in an ice sheet setting is not valid for the majority of mountain glaciers with their steep bed slopes and high aspect ratio. Various types of models have been applied to mountain glaciers to understand the link between climate and glacier response, from simplified analytical models (e.g. Klok and Oerlemans, 2003), one-dimensional flowline models (e.g. Oerlemans, 1997), two-dimensional SIA models (e.g. Plummer and Phillips, 2003), and two-dimensional models with longitudinal stresses (e.g. Golledge and hubbard, 2005).<br />
<br />
<br />
<br />
'''References'''<br />
<br />
Golledge, N. R., and A. Hubbard. 2005. Evaluating Younger Dryas glacier reconstructions in part of the western Scottish Highlands: a combined empirical and theoretical approach. Boreas 34 (August): 274-286. doi:10.1080/03009480510013024.<br />
<br />
Hock, Regine. 2005. Glacier melt: a review of processes and their modelling. Progress in Physical Geography 29, no. 3: 362-391. doi:10.1191/0309133305pp453ra.<br />
<br />
Klok, E. J., and J. Oerlemans. 2003. Deriving historical equilibrium-line altitudes from a glacier length record by linear inverse modelling. The Holocene 13, no. 3: 343-351. doi:10.1191/0959683603hl627rp.<br />
<br />
Oerlemans, J. 1997. A flowline model for Nigardsbreen, Norway: Projection of future glacier length based on dynamic calibration with the historic record. Annals of Glaciology 24: 382-389.<br />
<br />
Plummer, Mitchell A., and Fred M. Phillips. 2003. A 2-D numerical model of snow/ice energy balance and ice flow for paleoclimatic interpretation of glacial geomorphic features. Quaternary Science Reviews 22, no. 14: 1389-1406. doi:10.1016/S0277-3791(03)00081-7.</div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Modelling_mountain_glaciersModelling mountain glaciers2009-08-06T03:58:56Z<p>Brian anderson: </p>
<hr />
<div>== Introduction ==<br />
<br />
<br />
The physics governing the behaviour of mountain glaciers is identical to that governing ice sheets - both in terms of the interactions between the atmosphere and the snow/ice surface and the physics of glacier flow. However the complex topography and steep slopes that characterise mountain areas mean that the surface mass balance and flow tend to be treated in slightly different ways.<br />
<br />
The evolution of an ice mass can be described<br />
<br />
<math>\nabla \cdot q - M = \frac{\partial H }{\partial t}</math><br />
<br />
where ''q'' is the ice flux and <math>M = M_{acc} + M_{abl}</math> is the mass balance. <math>M_{acc}</math> is the amount of accumulation, and <math>M_{abl}</math> the ablation.<br />
<br />
<br />
<br />
== Modelling mass balance ==<br />
<br />
Mass balance depends on the local climate of the glacier or ice sheet. As glaciers and ice sheets are often in remote areas this step can be difficult. Different ways of obtaining relevant climate data are:<br />
<br />
* single climate station combined with lapse rates<br />
* weighted average of mulitple stations<br />
* two-dimensional interpolation from multiple stations<br />
* downscaled reanalysis/GCM data<br />
* mesoscale atmospheric model output<br />
<br />
'''Modelling accumulation'''<br />
<br />
The interactions between the atmosphere and the snow/ice surface can be complex. The amount of snow that accumulates has high spatial variability in high-relief terrain which is difficult to model because of the influence of wind and avalanche transport. A scheme which captures the bulk effect of the processes that govern snow accumulation, if not the processes themselves, is to simply use a snow/rain threshold temperature <math>T_{snow}</math> (often ~ <math>1^oC</math>) combined with measured or modelled precipitation. The effect of wind and avalanche transport may be determined empirically.<br />
<br />
<br />
<math><br />
M_{acc} = \left\{ <br />
\begin{array}{l l}<br />
p \cdot f & \quad {if T \leq T_{snow}}\\<br />
0 & \quad {if T > T_{snow}}\\<br />
\end{array} \right.<br />
</math><br />
<br />
<br />
<br />
'''Modelling ablation'''<br />
<br />
The amount of snow and ice that melts is governed by the energy balance at the surface:<br />
<br />
<math>Q_m = I(1-\alpha) + L_{out} + L_{in} + Q_H + Q_E + Q_R + Q_G</math><br />
<br />
where <math>Q_m</math>, the energy available for melt, is balanced by<br />
<br />
*<math>I(1-\alpha)</math> the incoming solar radiation <math>I</math>, less the amount reflected from the snow/ice surface which is controlled by the surface albedo <math>\alpha</math><br />
*<math>L_{out}</math> the outgoing long-wave radiation<br />
*<math>L_{in}</math> the incoming long-wave radiation<br />
*<math>Q_H</math> the sensible heat flux<br />
*<math>Q_E</math> the latent heat flux<br />
*<math>Q_R</math> the rainfall heat flux<br />
*<math>Q_G</math> the subsurface (ground) heat flux<br />
<br />
All of these components can be calculated using empirical or theoretical relationships, and are often calculated at high temporal resolution (e.g. hourly). However, there is a large requirement for detailed climate data which can be hard to meet. See Hock (2005) for a detailed review of how these components are usually calculated.<br />
<br />
'''Positive Degree-day models'''<br />
<br />
Rather than a data intensive energy balance model, many studies use a simpler degree-day model to calculating surface melt. This approach relies on the strong statistical relationship between snow/ice melt and positive temperature sums. This relationship holds even when, as in continental areas, the energy balance is dominated by radiation. The only input data required are temperature.<br />
<br />
<math>M_{abl}=\sum_{}^{} [PDD\cdot f]</math><br />
<br />
The positive temperature sum PDD is typically calculated monthly (using daily data or an assumption about the distribution of temperature within the month). A different degree-day factor <math>f</math> is used for snow and ice surfaces, reflecting the different albedo and surface roughness characteristics.<br />
<br />
== Modelling glacier flow ==<br />
<br />
While the equations of glacier flow are the same for mountain glaciers as for ice sheets, there are some important differences in the way that they are applied. For example, the thermodynamics of glaciers in temperate areas is usually neglected and a constant ice deformation factor is used. However, the shallow ice approximation which is commonly used in an ice sheet setting is not valid for the majority of mountain glaciers with their steep bed slopes and high aspect ratio. Various types of models have been applied to mountain glaciers to understand the link between climate and glacier response, from simplified analytical models (e.g. Klok and Oerlemans, 2003), one-dimensional flowline models (e.g. Oerlemans, 1997), two-dimensional SIA models (e.g. Plummer and Phillips, 2003), and two-dimensional models with longitudinal stresses (e.g. Golledge and hubbard, 2005).<br />
<br />
<br />
<br />
'''References'''<br />
<br />
Golledge, N. R., and A. Hubbard. 2005. Evaluating Younger Dryas glacier reconstructions in part of the western Scottish Highlands: a combined empirical and theoretical approach. Boreas 34 (August): 274-286. doi:10.1080/03009480510013024.<br />
<br />
Hock, Regine. 2005. Glacier melt: a review of processes and their modelling. Progress in Physical Geography 29, no. 3: 362-391. doi:10.1191/0309133305pp453ra.<br />
<br />
Klok, E. J., and J. Oerlemans. 2003. Deriving historical equilibrium-line altitudes from a glacier length record by linear inverse modelling. The Holocene 13, no. 3: 343-351. doi:10.1191/0959683603hl627rp.<br />
<br />
Oerlemans, J. 1997. A flowline model for Nigardsbreen, Norway: Projection of future glacier length based on dynamic calibration with the historic record. Annals of Glaciology 24: 382-389.<br />
<br />
Plummer, Mitchell A., and Fred M. Phillips. 2003. A 2-D numerical model of snow/ice energy balance and ice flow for paleoclimatic interpretation of glacial geomorphic features. Quaternary Science Reviews 22, no. 14: 1389-1406. doi:10.1016/S0277-3791(03)00081-7.</div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/4-5_August4-5 August2009-08-06T01:22:12Z<p>Brian anderson: </p>
<hr />
<div>==Back to [[Summer Modeling School]]==<br />
<br />
==Topics==<br />
<br />
A range of topics will be presented in the first two days. Many are intended to help build fundamental skills, others introduce the student to the theoretical basis for ice sheet modeling. Here is a list, and links to the material that will be presented.<br />
*[[Ice breaker]], presented by Jesse Johnson<br />
*[[Introduction to ice sheet modeling]], presented by Kees van der Veen. <br />
*[[Notes/vanderVeen_Aug4.rtf|Notes from ISMASS lecture]] <br />
*[[Notes/vanderVeen_Aug5|Notes from force balance lecture]]<br />
*[[Perspective on ice sheet modeling]], presented by [[Nina Kirchner]].<br />
*[[Pragmatic Programming]], presented by Gethin Williams.<br />
*[[Finite differencing: Introduction]] presented by Ian Rutt.<br />
*[[Finite differencing I]], presented by Ian Rutt and [[Jesse Johnson]].<br />
*[[Ice Rheology]], presented by [[Nina Kirchner]]. <br />
*[[Introduction to Ice Sheet Modeling]] by Christina Hulbe<br />
*[[Basal Conditions]] - especially how ice and sediments interact and some related aspects of drainage, presented by Alan Rempel<br />
*[[Finite differencing II]], presented by Ian Rutt and [[Jesse Johnson]].<br />
*[[Kees' assignment]]</div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Kees%27_assignmentKees' assignment2009-08-05T19:24:23Z<p>Brian anderson: </p>
<hr />
<div>==Model equation==<br />
:<math>\frac{\partial H}{\partial t} = - \frac{\partial}{\partial x}D(x) \frac{\partial H}{\partial x} + M</math><br />
<br />
where<br />
<br />
<math>D(x) = C H^{n+2}\frac{\partial h} {\partial x} ^{n-1},</math><br />
<br />
and <br />
<br />
:<math>C = \frac{2 A}{5} \left(\rho g\right)^n</math><br />
<br />
==Model parameters==<br />
*<math>\frac{\partial b}{\partial x} = -0.1</math><br />
* <math>M(x) = M_0 - x M_1 = 4 - 2e-4 x</math><br />
* <math>\rho</math> = 920 <math>kg/m^3</math><br />
*g=9.8 <math>m/s^2</math><br />
*A = 1e-7 <math> kPa^{-3} a^{-1}</math><br />
<br />
==Boundary conditions==<br />
<br />
* <math>H_l = 0 </math> (left boundary)<br />
<br />
* <math> H_r>0</math> (right boundary)<br />
<br />
==Numerical tips==<br />
<br />
Use a staggered grid such that <math>D(x_{j+1/2})</math>, so<br />
<br />
:<math>D(x_{j+1/2}) = C \frac{1}{2} \left(H_j + H_{j+1}\right)^5 \left(\frac{h_{j+1} - h_j}{\Delta x}\right)^2.</math><br />
<br />
and then the flux will be computed as<br />
<br />
:<math>-\frac{\partial }{\partial x} H\bar u = </math></div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Kees%27_assignmentKees' assignment2009-08-05T19:23:32Z<p>Brian anderson: </p>
<hr />
<div>==Model equation==<br />
:<math>\frac{\partial H}{\partial t} = - \frac{\partial}{\partial x}D(x) \frac{\partial H}{\partial x} + M</math><br />
<br />
where<br />
<br />
<math>D(x) = C H^{n+2}\frac{\partial h} {\partial x} ^{n-1},</math><br />
<br />
and <br />
<br />
:<math>C = \frac{2 A}{5} \left(\rho g\right)^n</math><br />
<br />
==Model parameters==<br />
*<math>\frac{\partial b}{\partial x} = -0.1</math><br />
* <math>M(x) = M_0 - x M_1 = 4 - 2e^{-4} x</math><br />
* <math>\rho</math> = 920 <math>kg/m^3</math><br />
*g=9.8 <math>m/s^2</math><br />
*A = 1e-7 <math> kPa^{-3} a^{-1}</math><br />
<br />
==Boundary conditions==<br />
<br />
* <math>H_l = 0 </math> (left boundary)<br />
<br />
* <math> H_r>0</math> (right boundary)<br />
<br />
==Numerical tips==<br />
<br />
Use a staggered grid such that <math>D(x_{j+1/2})</math>, so<br />
<br />
:<math>D(x_{j+1/2}) = C \frac{1}{2} \left(H_j + H_{j+1}\right)^5 \left(\frac{h_{j+1} - h_j}{\Delta x}\right)^2.</math><br />
<br />
and then the flux will be computed as<br />
<br />
:<math>-\frac{\partial }{\partial x} H\bar u = </math></div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Group_five,_parabolic,_explicitGroup five, parabolic, explicit2009-08-05T18:42:09Z<p>Brian anderson: New page: <source lang='fortran'> program main implicit none real, parameter :: dx = 0.1, dt = 0.005125, tend = 1.025, pi=3.1415926 integer :: Nx, Nt, n real, allocatable :: x(:), u(:,:) integer...</p>
<hr />
<div><source lang='fortran'><br />
<br />
program main<br />
<br />
implicit none<br />
<br />
real, parameter :: dx = 0.1, dt = 0.005125, tend = 1.025, pi=3.1415926<br />
integer :: Nx, Nt, n <br />
real, allocatable :: x(:), u(:,:)<br />
integer :: i<br />
<br />
! size of time and space domain<br />
Nt=floor(tend/dt)+1<br />
Nx=floor(1/dx)+1<br />
<br />
allocate(u(Nx,Nt),x(Nx))<br />
<br />
! x domain<br />
! initial condition<br />
<br />
do i=1,Nx<br />
x(i) = (i-1) * dx<br />
u(i,1) = sin (pi * x(i))<br />
enddo<br />
<br />
do n=1,Nt-1<br />
do i=2,Nx-1<br />
u(i,n+1) = u(i,n)+dt/dx/dx*(u(i-1,n)-2*u(i,n)+u(i+1,n))<br />
enddo<br />
write (*,*) (u(i,n),i=1,Nx)<br />
enddo<br />
<br />
end program<br />
<br />
</source></div>Brian andersonhttp://websrv.cs.umt.edu/isis/index.php/Modelling_mountain_glaciersModelling mountain glaciers2009-07-28T01:55:29Z<p>Brian anderson: New page: == Introduction == The physics governing the behaviour of mountain glaciers is identical to that governing ice sheets - both in terms of the interactions between the atmosphere and the s...</p>
<hr />
<div>== Introduction ==<br />
<br />
<br />
The physics governing the behaviour of mountain glaciers is identical to that governing ice sheets - both in terms of the interactions between the atmosphere and the snow/ice surface and the physics of glacier flow. However the complex topography and steep slopes that characterise mountain areas mean that the surface mass balance and flow tend to be treated in slightly different ways.<br />
<br />
The evolution of an ice mass can be described<br />
<br />
<math>\nabla \cdot q - M = 0</math><br />
<br />
where ''q'' is the ice flux and <math>M = M_{acc} + M_{abl}</math> is the mass balance. <math>M_{acc}</math> is the amount of accumulation, and <math>M_{abl}</math> the ablation.<br />
<br />
<br />
<br />
== Modelling mass balance ==<br />
<br />
Mass balance depends on the local climate of the glacier or ice sheet. As glaciers and ice sheets are often in remote areas this step can be difficult. Different ways of obtaining relevant climate data are:<br />
<br />
* single climate station combined with lapse rates<br />
* weighted average of mulitple stations<br />
* two-dimensional interpolation from multiple stations<br />
* downscaled reanalysis/GCM data<br />
* mesoscale atmospheric model output<br />
<br />
'''Modelling accumulation'''<br />
<br />
The interactions between the atmosphere and the snow/ice surface can be complex. The amount of snow that accumulates has high spatial variability in high-relief terrain which is difficult to model because of the influence of wind and avalanche transport. A scheme which captures the bulk effect of the processes that govern snow accumulation, if not the processes themselves, is to simply use a snow/rain threshold temperature <math>T_{snow}</math> (often ~ <math>1^oC</math>) combined with measured or modelled precipitation. The effect of wind and avalanche transport may be determined empirically.<br />
<br />
<br />
<math><br />
M_{acc} = \left\{ <br />
\begin{array}{l l}<br />
p \cdot f & \quad {if T \leq T_{snow}}\\<br />
0 & \quad {if T > T_{snow}}\\<br />
\end{array} \right.<br />
</math><br />
<br />
<br />
<br />
'''Modelling ablation'''<br />
<br />
The amount of snow and ice that melts is governed by the energy balance at the surface:<br />
<br />
<math>Q_m = I(1-\alpha) + L_{out} + L_{in} + Q_H + Q_E + Q_R + Q_G</math><br />
<br />
where <math>Q_m</math>, the energy available for melt, is balanced by<br />
<br />
*<math>I(1-\alpha)</math> the incoming solar radiation <math>I</math>, less the amount reflected from the snow/ice surface which is controlled by the surface albedo <math>\alpha</math><br />
*<math>L_{out}</math> the outgoing long-wave radiation<br />
*<math>L_{in}</math> the incoming long-wave radiation<br />
*<math>Q_H</math> the sensible heat flux<br />
*<math>Q_E</math> the latent heat flux<br />
*<math>Q_R</math> the rainfall heat flux<br />
*<math>Q_G</math> the subsurface (ground) heat flux<br />
<br />
All of these components can be calculated using empirical or theoretical relationships, and are often calculated at high temporal resolution (e.g. hourly). However, there is a large requirement for detailed climate data which can be hard to meet. See Hock (2005) for a detailed review of how these components are usually calculated.<br />
<br />
'''Positive Degree-day models'''<br />
<br />
Rather than a data intensive energy balance model, many studies use a simpler degree-day model to calculating surface melt. This approach relies on the strong statistical relationship between snow/ice melt and positive temperature sums. This relationship holds even when, as in continental areas, the energy balance is dominated by radiation. The only input data required are temperature.<br />
<br />
<math>M_{abl}=\sum_{}^{} [PDD\cdot f]</math><br />
<br />
The positive temperature sum PDD is typically calculated monthly (using daily data or an assumption about the distribution of temperature within the month). A different degree-day factor <math>f</math> is used for snow and ice surfaces, reflecting the different albedo and surface roughness characteristics.<br />
<br />
== Modelling glacier flow ==<br />
<br />
While the equations of glacier flow are the same for mountain glaciers as for ice sheets, there are some important differences in the way that they are applied. For example, the thermodynamics of glaciers in temperate areas is usually neglected and a constant ice deformation factor is used. However, the shallow ice approximation which is commonly used in an ice sheet setting is not valid for the majority of mountain glaciers with their steep bed slopes and high aspect ratio. Various types of models have been applied to mountain glaciers to understand the link between climate and glacier response, from simplified analytical models (e.g. Klok and Oerlemans, 2003), one-dimensional flowline models (e.g. Oerlemans, 1997), two-dimensional SIA models (e.g. Plummer and Phillips, 2003), and two-dimensional models with longitudinal stresses (e.g. Golledge and hubbard, 2005).<br />
<br />
<br />
<br />
'''References'''<br />
<br />
Golledge, N. R., and A. Hubbard. 2005. Evaluating Younger Dryas glacier reconstructions in part of the western Scottish Highlands: a combined empirical and theoretical approach. Boreas 34 (August): 274-286. doi:10.1080/03009480510013024.<br />
<br />
Hock, Regine. 2005. Glacier melt: a review of processes and their modelling. Progress in Physical Geography 29, no. 3: 362-391. doi:10.1191/0309133305pp453ra.<br />
<br />
Klok, E. J., and J. Oerlemans. 2003. Deriving historical equilibrium-line altitudes from a glacier length record by linear inverse modelling. The Holocene 13, no. 3: 343-351. doi:10.1191/0959683603hl627rp.<br />
<br />
Oerlemans, J. 1997. A flowline model for Nigardsbreen, Norway: Projection of future glacier length based on dynamic calibration with the historic record. Annals of Glaciology 24: 382-389.<br />
<br />
Plummer, Mitchell A., and Fred M. Phillips. 2003. A 2-D numerical model of snow/ice energy balance and ice flow for paleoclimatic interpretation of glacial geomorphic features. Quaternary Science Reviews 22, no. 14: 1389-1406. doi:10.1016/S0277-3791(03)00081-7.</div>Brian anderson