Creates a new ice_sheet object with initial conditions provided by the arguments. At present only a 1D model is supported. If information is provided for higher dimensions then it will be ignored.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=r8), | intent(in), | dimension(:,:) | :: | domain | An array containing the upper and lower limits of the domain for the ice sheet. The first index represents the dimension for which the boundaries apply. If the second index is 1 then it corresponds to the lower bound. If the second index is 2 then it corresponds to the upper bound. |
|
integer, | intent(in), | dimension(:) | :: | resolution | The number of data points in each dimension |
|
procedure(thickness_func) | :: | thickness | A function which calculates the initial value of the thickness of the ice sheet at a given location. |
|||
procedure(velocity_func) | :: | velocity | A function which calculates the initial value of the velocity (vector) of the ice at a given location in an ice sheet. |
|||
class(abstract_viscosity), | intent(in), | optional | :: | viscosity_law | An object which calculates the viscosity of the ice. |
|
real(kind=r8), | intent(in), | optional | :: | lambda | The dimensionless ratio $\lambda \equiv \frac{\rho_0m_0x_0}{\rho_iH-0u_0}$ |
|
real(kind=r8), | intent(in), | optional | :: | chi | The dimensionless ratio $\chi \equiv \frac{\rho_igh_0x_x}{2\eta_0u_0}$ |
An ice sheet object with its domain and initial conditions set according to the arguments of the constructor function.