An abstract data type for calculating viscosity of a vertically integrated glacier.
Returns the viscosity for the ice.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(abstract_viscosity), | intent(in) | :: | this | |||
| class(vector_field), | intent(in) | :: | velocity | The velocity field of the ice for which the velocity is being calculated |
||
| real(kind=r8), | intent(in) | :: | temperature | The temperature of the ice for which viscosity is being calculated. |
||
| real(kind=r8), | intent(in), | optional | :: | time | The time at which the viscosity is being calculated. If not present then assumed to be same as previous value passed. |
The value of the viscosity
type, abstract, public :: abstract_viscosity
!* Author: Christopher MacMackin
! Date: October 2016
!
! An abstract data type for calculating viscosity of a vertically
! integrated [[glacier(type)]].
!
contains
procedure(get_viscosity), deferred :: ice_viscosity
!! Returns the viscosity for the ice.
end type abstract_viscosity