Procedure | Location | Procedure Type | Description |
---|---|---|---|
alpha_d2 | transverse_coefficients_mod | Interface | |
alpha_ds | transverse_coefficients_mod | Interface | |
alpha_ds_t | transverse_coefficients_mod | Interface | |
alpha_dt | transverse_coefficients_mod | Interface | |
alpha_dt_t | transverse_coefficients_mod | Interface | |
alpha_du | transverse_coefficients_mod | Interface | |
alpha_du2 | transverse_coefficients_mod | Interface | |
alpha_dus | transverse_coefficients_mod | Interface | |
alpha_dut | transverse_coefficients_mod | Interface | |
alpha_duv | transverse_coefficients_mod | Interface | |
alpha_dv | transverse_coefficients_mod | Interface | |
alpha_uvect | transverse_coefficients_mod | Interface | |
alpha_uvecu | transverse_coefficients_mod | Interface | |
alpha_uvecv | transverse_coefficients_mod | Interface | |
assign | coriolis_block_mod | Subroutine | Safely assigns the value of one coriolis block to another. |
asym_plume_data_size | asymmetric_plume_mod | Function | Returns the number of elements in the plume's state vector. This is the size of the vector returned by state_vector and taken as an argument by update. |
asym_plume_drag_parameter | asymmetric_plume_mod | Function | Computes and returns a quantity which may be necessary to determine the frictional drag the plume exerts on the bottom of the ice shelf. The plume would actually tend to exert no drag on the bottom of the ice shelf, but this method is present so that there is a consistent interface with the ground data type. |
asym_plume_initialise | asymmetric_plume_mod | Subroutine | Instantiates an asym_plume object with initial coniditions provided by the arguments.At present only a 1D model is supported. If information is provided for higher dimensions then it will be ignored. |
asym_plume_melt | asymmetric_plume_mod | Function | Computes and returns the melt rate at the bottom of the ice shelf due to interaction with the plume. |
asym_plume_read_data | asymmetric_plume_mod | Subroutine | Reads the state of the plume object from an HDF file in the specified group. This sets the thickness, velocity, temperature, salinity dataset, and parameter values. |
asym_plume_solve | asymmetric_plume_mod | Subroutine | Solves the state of the plume for the specified ice properties, at the specified time. This is done using the a quasilinearisation method and a GMRES iterative linear solver. |
asym_plume_state_vector | asymmetric_plume_mod | Function | Returns the state vector for the current state of the plume. This takes the form of a 1D array. |
asym_plume_update | asymmetric_plume_mod | Subroutine | Updates the state of the plume from its state vector. The state vector is a real array containing the value of each of the plume's properties at each of the locations on the grid used in discretization. |
asym_plume_water_density | asymmetric_plume_mod | Function | Computes and returns the density of the plume water beneath the ice shelf. The density of this water would vary depending on how much saline ambient water has been entrained into the plume versus how much fresh water has been released due to melting. However, the Boussinesq approximation is used here and only a single reference density is returned. |
asym_plume_write_data | asymmetric_plume_mod | Subroutine | Writes the state of the plume object to an HDF file in the specified group. This will consist of a thickness, a velocity, a temperature, and a salinity dataset. |
ave_linear_eos | ave_linear_eos_mod | Interface | |
ave_one_equation_melt | ave_one_equation_melt_mod | Interface | |
ave_one_equation_melt_rate | ave_one_equation_melt_mod | Function | |
bicgstab_solve | nitsol_mod | Subroutine | A wraper for the nitsol implementation of the biconjugate gradient stabilized method (BiCGSTAB) for iteratively solving linear systems. This provides a more general interface not specifically intended for use with Newton iteration. It also uses Fortran 90 features to provide a more convenient call signature. |
bis_secant | rootfind | Subroutine | A root finder using the hybrid bisection-secant algorithm. Returns a computed value of the root within xleft and xright once error < maxerr or has run maximum number of iterations. |
bound_array | glacier_boundary_mod | Function | Default implementation of the method getting lower and upper boundary information, which is then passed to the methods for getting and setting raw representations of fields. It returns a 1D array of length 2, indicating free boundaries (the raw data should represent all cells contained in the field, not excluding any near the boundaries). |
bound_info | plume_boundary_mod | Subroutine | Provides information about the type of boundary, and the number of layers of data-points needed to describe it. |
bound_type | glacier_boundary_mod | Function | Default implementation of the methods getting the boundary types for a glacier. It returns an array which indicates free boundaries. |
boundary_residuals | glacier_boundary_mod | Function | Default implementation of the boundary_residuals method. It returns a zero-length array, effectively indicating free boundaries. |
calcei | specfun_mod | Subroutine | ************80 |
collect_garbage | rksuite_90 | Interface | |
collect_garbage_r1 | rksuite_90 | Subroutine | |
compile_info | meta_mod | Interface | |
compile_time | meta_mod | Interface | |
constructor | linear_eos_mod | Function | |
constructor | ave_linear_eos_mod | Function | |
constructor | uniform_gradient_field_mod | Function | Creates a new scalar field with a uniform value across all of space but a non-zero gradient. |
constructor | preconditioner_mod | Function | Create a preconditioner object with the desired tolerance and maximum number of iterations. |
constructor | pseudospectral_block_mod | Function | Builds a Chebyshsev pseudospectral differentiation matrix block which can be used to solve the inverse problem. The result can only be used with fields having the same grid as the template. |
constructor | jacobian_block_mod | Function | Build a block in a Jacobian matrix, with the form where is a scalar field and is the differentiation operator in the -direction. Additionally, a further differentiation operator may be added to the right hand side of this matrix block. Optional arguments allow for handling of boundary conditions. See the end of the documentation of the jacobian_block type for a description of how boundary conditions are treated. |
constructor | coriolis_block_mod | Function | Builds a Coriolis block which can be used to solve the inverse problem for the linear components of the plume momentum equations. The result can only be used with fields having the same grid as the template. |
constructor | prescribed_eos_mod | Function | |
constructor | ground_mod | Function | Instantiates a ground object. |
constructor | ice_sheet_mod | Function | 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. |
constructor | finite_difference_block_mod | Function | Build a tridiagonal matrix block for finite differences. See the end of the documentation of the fin_diff_block type for a description of how boundary conditions are treated. |
constructor | uniform_ambient_mod | Function | Produces an ambient object which will return the specified salinity and temeprature values. |
constructor | simple_plume_boundary_mod | Function | Constructs a boundary condition object for an ice shelf based on the conditions used in Dallaston et al. (2015). |
constructor | dallaston2015_seasonal_mod | Function | Constructs a boundary condition object for an ice shelf based on the conditions used in Dallaston et al. (2015), but with seasonal variations in subglacial discharge. |
constructor | seasonal_glacier_boundary_mod | Function | Constructs a boundary condition object for an ice shelf based on the conditions used in Dallaston et al. (2015), but with the ice flux at the grounding line varying in time. |
constructor | upstream_plume_mod | Function | Constructs a boundary condition object which integrates an IVP from actual boundary values to calculate the staet of the plume a little upstream. This can be used to avoid boundary layers. |
constructor | dallaston2015_glacier_boundary_mod | Function | Constructs a boundary condition object for an ice shelf based on the conditions used in Dallaston et al. (2015). |
constructor | ave_one_equation_melt_mod | Function | |
constructor | newtonian_viscosity_mod | Function | |
constructor | glens_law_mod | Function | Instantiates an instance of a viscosity object implementing Glen's flow law. |
constructor | kochergin1987_entrainment_mod | Function | |
constructor | jenkins1991_entrainment_mod | Function | |
constructor | dallaston2015_melt_mod | Function | |
constructor | one_equation_melt_mod | Function | |
coriolis_block | coriolis_block_mod | Interface | |
current_time | meta_mod | Function | Returns the current date and time in the same format as the compile_time function. |
dallaston2015_glacier_boundary | dallaston2015_glacier_boundary_mod | Interface | |
dallaston2015_has_heat | dallaston2015_melt_mod | Function | |
dallaston2015_has_salt | dallaston2015_melt_mod | Function | |
dallaston2015_heat | dallaston2015_melt_mod | Function | |
dallaston2015_lower_bound | dallaston2015_glacier_boundary_mod | Function | Indicates that one layer of cells at the lower boundary in the first dimension should be omitted. This is appropriate for Dirichlet boundary conditions. |
dallaston2015_lower_type | dallaston2015_glacier_boundary_mod | Function | Specifies that the lower boundary in the first dimension has Dirichlet boundary conditions. |
dallaston2015_melt | dallaston2015_melt_mod | Interface | |
dallaston2015_melt_rate | dallaston2015_melt_mod | Function | |
dallaston2015_residuals | dallaston2015_glacier_boundary_mod | Function | Returns the difference between the glacier conditions of the plume and the Dirichlet conditions prescribed in the model of Dallaston et al. (2015) |
dallaston2015_salt | dallaston2015_melt_mod | Function | |
dallaston2015_seasonal_boundary | dallaston2015_seasonal_mod | Interface | |
dallaston2015_solve | dallaston2015_melt_mod | Subroutine | |
dallaston2015_upper_bound | dallaston2015_glacier_boundary_mod | Function | Indicates that one layer of cells at the upper boundary in the first dimension should be omitted for thickness. This is appropriate for Dirichlet boundary conditions. |
dallaston2015_upper_type | dallaston2015_glacier_boundary_mod | Function | Specifies that the upper boundary in the first dimension has Neumann boundary conditions. |
ddot | nitsol_mod | Interface | |
dnrm2 | nitsol_mod | Interface | |
dummy_f | nitsol_mod | Subroutine | A dummy subroutine which does not calculate the function. |
dummy_jacv | nitsol_mod | Subroutine | A dummy subroutine which does not apply a preconditioner or
calculate an analytic Jacobian. This can be passed to nitsol
for the argument |
ei | specfun_mod | Function | ************80 |
f_d | transverse_coefficients_mod | Interface | |
f_s | transverse_coefficients_mod | Interface | |
f_s_p | transverse_coefficients_mod | Interface | |
f_t | transverse_coefficients_mod | Interface | |
f_t_p | transverse_coefficients_mod | Interface | |
f_u | transverse_coefficients_mod | Interface | |
f_u_p | transverse_coefficients_mod | Interface | |
f_v | transverse_coefficients_mod | Interface | |
f_v_p | transverse_coefficients_mod | Interface | |
fin_diff_block | finite_difference_block_mod | Interface | |
fin_diff_block_solve_scalar | finite_difference_block_mod | Function | Solves the linear(ised) system represented by this finite difference block, for a given right hand side state vector (represented by a scalar field). Optionally, the differential operator can be augmented by adding an offset, i.e. a scalar field which is added to the operator. |
fin_diff_block_solve_vector | finite_difference_block_mod | Function | Solves the linear(ised) system represented by this finite difference block, for a given right hand side state vector (represented by a vector field). Optionally, the differential operator can be augmented by adding an offset, i.e. a vector field which is added to the operator. |
fpbspl | splev.f | Subroutine | |
get_saved_fatal | rksuite_90 | Interface | |
get_saved_fatal_r1 | rksuite_90 | Function | |
get_saved_state_r1 | rksuite_90 | Function | |
get_stop_on_fatal_r1 | rksuite_90 | Function | |
get_time | cryosphere_mod | Function | Returns the current time of the cryosphere system. |
glacier_integrate | glacier_mod | Subroutine | Integrates the glacier's state to |
glacier_integrate_layers | glacier_mod | Subroutine | Dummy routine which does nothing. |
glens_ice_viscosity | glens_law_mod | Function | Calculates the viscosity of ice using Glen's flow law. See the documentation of the glens_law_viscosity object for a description of this parameterisation. |
glens_law_viscosity | glens_law_mod | Interface | |
global_bis_sec | rootfind | Subroutine | A subroutine which finds the values of all roots of a function (or as many as will fit into the provided arrays) within a given range of values. This subroutine uses the hybrid bisection-secant root-finding algorithm. |
global_brackets | rootfind | Subroutine | A global bracket finder. For a given function it finds values on each side of each of the function's roots within a given range. |
global_error | rksuite_90 | Interface | |
global_error_r1 | rksuite_90 | Subroutine | |
gmres_solve | nitsol_mod | Subroutine | A wraper for the nitsol implementation of the generalised minimal residual method (GMRES) for iteratively solving linear systems. This provides a more general interface not specifically intended for use with Newton iteration. It also uses Fortran 90 features to provide a more convenient call signature. |
ground | ground_mod | Interface | |
ground_data_size | ground_mod | Function | Returns the number of elements in the ground's state vector. This is the size of the vector returned by state_vector and taken as an argument by update. |
ground_drag_parameter | ground_mod | Function | Computes and returns a quantity which may be necessary to determine the frictional drag the ground exerts on the bottom of the ice sheet. An example would be the coefficient of friction. The description of this method is left deliberately vague so that as not to constrain how the drag is parameterized. |
ground_melt | ground_mod | Function | Computes and returns the melt rate at the bottom of the ice sheet due to interaction with the ground. |
ground_read_data | ground_mod | Subroutine | Reads the state of the ground object from the specified group in an HDF file. |
ground_solve | ground_mod | Subroutine | Solves the state of the ground for the specified ice properties, at the specified time. |
ground_state_vector | ground_mod | Function | Returns the state vector for the current state of the ground. This takes the form of a 1D array. |
ground_update | ground_mod | Subroutine | Updates the state of the ground from its state vector. The state vector is a real array containing the value of each of the ground's properties at each of the locations on the grid used in discretization. |
ground_water_density | ground_mod | Function | Computes and returns the density of the water beneath the ice sheet. This water would be subglacial discharge and would tend to lubricate the motion of the ice sheet. The density probably won't be important in the case of an ice sheet, but is included so that the ground data type can have the same interface as the plume data type. |
ground_write_data | ground_mod | Subroutine | Writes the state of the ground object to an HDF file in the specified group. |
ice_sheet | ice_sheet_mod | Interface | |
ice_shelf_integrate_layers | ice_shelf_mod | Subroutine | Integrate the Taylor coefficients representing the vertical structure of internal reflectors forward to the specified time. This is done using an implicit method, with the resulting linear system solved using GMRES. |
increase_time_step | cryosphere_mod | Subroutine | Increases the time step by a factor of 2, unless doing so would take it above the maximum. |
initialise | cryosphere_mod | Subroutine | Initialise a cryosphere object from the provided components. This object will model the evolution of a glacier/ice shelf/ice sheet and its surroundings. |
integrate | cryosphere_mod | Subroutine | Integrates the cryosphere forward until the specified |
interpolate | rksuite_90 | Interface | |
interpolate_r1 | rksuite_90 | Subroutine | |
jacobian_block | jacobian_block_mod | Interface | |
jacobian_block_add_block | jacobian_block_mod | Function | Produces a Jacobian block which is the sum of two existing
blocks. Boundary conditions are set by the first operand
( |
jacobian_block_add_field | jacobian_block_mod | Function | Produces a Jacobian block which has been offset by a scalar field. |
jacobian_block_add_real | jacobian_block_mod | Function | Produces a Jacobian block which has been offset by some constant increment. |
jacobian_block_assign | jacobian_block_mod | Subroutine | Copies the contents of the |
jacobian_block_bounds | jacobian_block_mod | Subroutine | A default implementation of the |
jacobian_block_get_tridiag | jacobian_block_mod | Subroutine | Computes the tridiagonal matrix used to solve for this Jacobian block. |
jacobian_block_multiply | jacobian_block_mod | Function | Provides a matrix multiplication operator between a Jacobian block and a scalar field (which corresponds to a state vector). |
jacobian_block_solve | jacobian_block_mod | Function | Solves the linear(ised) system represented by this Jacobian block, for a given right hand side state vector (represented by a scalar field). |
jenkins1991_entrainment | jenkins1991_entrainment_mod | Interface | |
jenkins1991_rate | jenkins1991_entrainment_mod | Function | Here, is a coefficient typically taken to be 0.036 (the default value), is the velocity of the plume, is the angle of slope of the ice shelf base, and is the basal depth of the ice shelf. |
kochergin1987_entrainment | kochergin1987_entrainment_mod | Interface | |
kochergin1987_rate | kochergin1987_entrainment_mod | Function | Here, is an entrainment coefficient, is the velocity of the plume, is the reduced gravity, and is the turbulent Schmidt number. The Schmidt number is a function of the Richardson number : |
linear_eos | linear_eos_mod | Interface | |
linear_haline_contraction | linear_eos_mod | Function | Returns the haline contraction coefficient. |
linear_haline_contraction | ave_linear_eos_mod | Function | Returns the haline contraction coefficient. |
linear_thermal_contraction | linear_eos_mod | Function | Returns the thermal contraction coefficient. |
linear_thermal_contraction | ave_linear_eos_mod | Function | Returns the thermal contraction coefficient. |
linear_water_density | linear_eos_mod | Function | Calculates the density of the water from the temperature and salinity, using a linear equatino of state, |
linear_water_density | ave_linear_eos_mod | Function | Calculates the density of the water from the temperature and salinity, using a linear equation of state, |
linear_water_density_ave1 | ave_linear_eos_mod | Function | Calculates one form of the horizontally-averaged density of the water from the temperature and salinity, using a linear equation of state, |
linear_water_density_ave2 | ave_linear_eos_mod | Function | Calculates another form of the horizontally-averaged density of the water from the temperature and salinity, using a linear equation of state, |
linear_water_deriv | linear_eos_mod | Function | Calculates the derivative of the water density from the temperature and salinity, using a linear equatino of state, |
linear_water_deriv | ave_linear_eos_mod | Function | Calculates the derivative of the average water density from the temperature and salinity, using a linear equation of state with the second type of averaging, |
machine_const | rksuite_90 | Subroutine | |
method_const | rksuite_90 | Subroutine | |
newtonian_ice_viscosity | newtonian_viscosity_mod | Function | |
newtonian_viscosity | newtonian_viscosity_mod | Interface | |
nitgm2 | nitgm2.f | Subroutine | FCNRM is no longer an argument, as it needs to be calculated from the residual, which isn't known until a little way into this routine. It could be calculated by the calling routine, but that would mean doing the calculation twice. |
nitgm2 | nitsol_mod | Interface | |
nitsol | nitsol_mod | Interface | |
nitstb2 | nitstb2.f | Subroutine | FCNRM is no longer an argument, as it needs to be calculated from the residual, which isn't known until a little way into this routine. It could be calculated by the calling routine, but that would mean doing the calculation twice. |
nitstb2 | nitsol_mod | Interface | |
nittfq2 | nittfq2.f | Subroutine | FCNRM is no longer an argument, as it needs to be calculated from the residual, which isn't known until a little way into this routine. It could be calculated by the calling routine, but that would mean doing the calculation twice. |
nittfq2 | nitsol_mod | Interface | |
one_equation_has_heat | ave_one_equation_melt_mod | Function | |
one_equation_has_heat | one_equation_melt_mod | Function | |
one_equation_has_salt | ave_one_equation_melt_mod | Function | |
one_equation_has_salt | one_equation_melt_mod | Function | |
one_equation_heat | ave_one_equation_melt_mod | Function | |
one_equation_heat | one_equation_melt_mod | Function | |
one_equation_melt | one_equation_melt_mod | Interface | |
one_equation_melt_rate | one_equation_melt_mod | Function | |
one_equation_salt | ave_one_equation_melt_mod | Function | |
one_equation_salt | one_equation_melt_mod | Function | |
one_equation_solve | ave_one_equation_melt_mod | Subroutine | |
one_equation_solve | one_equation_melt_mod | Subroutine | |
plume_data_size | plume_mod | Function | Returns the number of elements in the plume's state vector. This is the size of the vector returned by state_vector and taken as an argument by update. |
plume_drag_parameter | plume_mod | Function | Computes and returns a quantity which may be necessary to determine the frictional drag the plume exerts on the bottom of the ice shelf. The plume would actually tend to exert no drag on the bottom of the ice shelf, but this method is present so that there is a consistent interface with the ground data type. |
plume_initialise | plume_mod | Subroutine | Instantiates a plume object with initial coniditions provided by the arguments.At present only a 1D model is supported. If information is provided for higher dimensions then it will be ignored. |
plume_melt | plume_mod | Function | Computes and returns the melt rate at the bottom of the ice shelf due to interaction with the plume. |
plume_read_data | plume_mod | Subroutine | Reads the state of the plume object from an HDF file in the specified group. This sets the thickness, velocity, temperature, salinity dataset, and parameter values. |
plume_solve | plume_mod | Subroutine | Solves the state of the plume for the specified ice properties, at the specified time. This is done using the a quasilinearisation method and a GMRES iterative linear solver. |
plume_state_vector | plume_mod | Function | Returns the state vector for the current state of the plume. This takes the form of a 1D array. |
plume_update | plume_mod | Subroutine | Updates the state of the plume from its state vector. The state vector is a real array containing the value of each of the plume's properties at each of the locations on the grid used in discretization. |
plume_water_density | plume_mod | Function | Computes and returns the density of the plume water beneath the ice shelf. The density of this water would vary depending on how much saline ambient water has been entrained into the plume versus how much fresh water has been released due to melting. However, the Boussinesq approximation is used here and only a single reference density is returned. |
plume_write_data | plume_mod | Subroutine | Writes the state of the plume object to an HDF file in the specified group. This will consist of a thickness, a velocity, a temperature, and a salinity dataset. |
preconditioner | preconditioner_mod | Interface | |
preconditioner_apply | preconditioner_mod | Subroutine | Use Picard iteration to approximately multiply the state vector by the inverse Jacobian. The details for this procedure are in the documentation of the preconditioner type. |
prescribed_assign | prescribed_eos_mod | Subroutine | Assigns this object to another equation of state object, allowing the definided assignment for the precalculated density field to work correctly. |
prescribed_eos | prescribed_eos_mod | Interface | |
prescribed_haline_contraction | prescribed_eos_mod | Function | Returns the haline contraction coefficient. |
prescribed_thermal_contraction | prescribed_eos_mod | Function | Returns the thermal contraction coefficient. |
prescribed_water_density | prescribed_eos_mod | Function | Returns the density corresponding to the prescribed salinity, as calculated in the constructor. |
prescribed_water_deriv | prescribed_eos_mod | Function | Calculates the derivative of the water density. |
pseudospec_block | pseudospectral_block_mod | Interface | |
pseudospec_block_solve_scalar | pseudospectral_block_mod | Function | Solves the linear(ised) system represented by this finite difference block, for a given right hand side state vector (represented by a scalar field). |
pseudospec_block_solve_vector | pseudospectral_block_mod | Function | Solves the linear(ised) system represented by this finite difference block, for a given right hand side state vector (represented by a vector field). |
quasilinear_solve | ode_solvers_mod | Subroutine | This is an iterative method to solve nonlinear systems of ODEs. Consider For a domain from , boundary conditions are specified by Here, is an th order ordinary differential operator, and are nonlinear functions of and its first derivatives. |
range_integrate | rksuite_90 | Interface | |
range_integrate_r1 | rksuite_90 | Subroutine | |
read_data | cryosphere_mod | Subroutine | Reads the data describing the cryosphere from an HDF5 file on
the disc. |
read_ice | cryosphere_mod | Subroutine | Reads the data describing the ice component of the cryosphere
from an HDF5 file on the disc. Data on anything below the ice is
ignored. |
read_sub_ice | cryosphere_mod | Subroutine | Reads the data describing the part of the cryosphere beneath the
ice from an HDF5 file on the disc. Data on the ice itself is
ignored. |
reduce_time_step | cryosphere_mod | Subroutine | Reuces the time step by a factor of 2, unless doing so would take it below the minimum value. |
reset_t_end | rksuite_90 | Interface | |
reset_t_end_r1 | rksuite_90 | Subroutine | |
rkmsg_r1 | rksuite_90 | Subroutine | |
scalar_bound | plume_boundary_mod | Function | Returns a field containing the boundary values for the specified boundary location. |
seasonal_glacier_boundary | seasonal_glacier_boundary_mod | Interface | |
seasonal_info | dallaston2015_seasonal_mod | Subroutine | Indicates that the lower boundary is Dirichlet and the upper boundary is Neumann. |
seasonal_lower_bound | seasonal_glacier_boundary_mod | Function | Indicates that one layer of cells at the lower boundary in the first dimension should be omitted. This is appropriate for Dirichlet boundary conditions. |
seasonal_lower_type | seasonal_glacier_boundary_mod | Function | Specifies that the lower boundary in the first dimension has Dirichlet boundary conditions. |
seasonal_residuals | seasonal_glacier_boundary_mod | Function | Returns the difference between the glacier conditions of the plume and the Dirichlet conditions prescribed in the model of Dallaston et al. (2015) |
seasonal_salinity_bound | dallaston2015_seasonal_mod | Function | Returns a field containing the salinity boundary values for the specified boundary location. |
seasonal_set_time | dallaston2015_seasonal_mod | Subroutine | Sets the time at which boundary conditions are to be calculated. |
seasonal_temperature_bound | dallaston2015_seasonal_mod | Function | Returns a field containing the temperature boundary values for the specified boundary location. |
seasonal_thickness_bound | dallaston2015_seasonal_mod | Function | Returns a field containing the thickness boundary values for the specified boundary location. |
seasonal_thickness_info | dallaston2015_seasonal_mod | Subroutine | Indicates that the lower boundary is Dirichlet and the upper boundary is free. |
seasonal_upper_bound | seasonal_glacier_boundary_mod | Function | Indicates that one layer of cells at the upper boundary in the first dimension should be omitted for thickness. This is appropriate for Dirichlet boundary conditions. |
seasonal_upper_type | seasonal_glacier_boundary_mod | Function | Specifies that the upper boundary in the first dimension has Neumann boundary conditions. |
seasonal_velocity_bound | dallaston2015_seasonal_mod | Function | Returns a field containing the velocity boundary values for the specified boundary location. |
set_saved_state_r1 | rksuite_90 | Subroutine | |
set_stop_on_fatal | rksuite_90 | Interface | |
set_stop_on_fatal_r1 | rksuite_90 | Subroutine | |
set_time | plume_boundary_mod | Subroutine | Sets the time at which boundary conditions are to be calculated. |
setup | rksuite_90 | Interface | |
setup_r1 | rksuite_90 | Subroutine | |
sheet_assign | ice_sheet_mod | Subroutine | Copies the data from one ice sheet into another. This is only needed due to a bug in gfortran which means that the intrinsic assignment for glacier types is not using the appropriate defined assignment for the field components. |
sheet_data_size | ice_sheet_mod | Function | Returns the number of elements in the ice sheet's state vector. This is the size of the vector returned by residual and state_vector and taken as an argument by update. |
sheet_density | ice_sheet_mod | Function | Returns the density of the ice in the sheet, which is assumed to be uniform across its domain. |
sheet_precondition | ice_sheet_mod | Function | Provides a preconditioner for the nonlinear solver trying to bring the residual to zero. The Jacobian is approximated as a block matrix, where each block is a tridiagonal matrix using a finite difference method for differentiation. |
sheet_read_data | ice_sheet_mod | Subroutine | Reads the state of the ice shelf object from the specified group in an HDF5 file. This sets the thickness, the velocity, and parameter values. |
sheet_residual | ice_sheet_mod | Function | Returns the residual when the current state of the glacier is run through the system of equations describing it. The residual takes the form of a 1D array, with each element respresenting the residual for one of the equations in the system. |
sheet_set_time | ice_sheet_mod | Subroutine | Sets the time information held by the ice sheet object. This is the time at which the ice sheet is in its current state. |
sheet_solve_velocity | ice_sheet_mod | Subroutine | Computes the ice sheet velocity at the current time with the current ice thickness. |
sheet_state_vector | ice_sheet_mod | Function | Returns the state vector for the current state of the ice sheet. This takes the form of a 1D array. |
sheet_temperature | ice_sheet_mod | Function | Returns the density of the ice in the sheet, which is assumed to be uniform across its domain. |
sheet_thickness | ice_sheet_mod | Function | Returns the thickness of the ice sheet across its domain. |
sheet_time_step | ice_sheet_mod | Function | Calculates the time step for integrating the ice sheet, using the CFL condition. |
sheet_update | ice_sheet_mod | Subroutine | Updates the state of the ice sheet from its state vector. The state vector is a real array containing the value of each of the ice sheet's properties at each of the locations on the grid used in descretization. |
sheet_velocity | ice_sheet_mod | Function | Returns the velocity of the ice sheet across its domain. |
sheet_write_data | ice_sheet_mod | Subroutine | Writes the state of the ice sheet object to an HDF file in the specified group. This will consist of a thickness and a velocity dataset. |
shelf_assign | ice_shelf_mod | Subroutine | Copies the data from one ice shelf into another. This is only needed due to a bug in gfortran which means that the intrinsic assignment for glacier types is not using the appropriate defined assignment for the field components. |
shelf_data_size | ice_shelf_mod | Function | Returns the number of elements in the ice shelf's state vector. This is the size of the vector returned by residual and state_vector and taken as an argument by update. |
shelf_density | ice_shelf_mod | Function | Returns the density of the ice in the shelf, which is assumed to be uniform across its domain. |
shelf_initialise | ice_shelf_mod | Subroutine | Initialises an ice_shelf 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. |
shelf_integrate | ice_shelf_mod | Subroutine | Integrates the glacier's state forward to |
shelf_kappa_vector | ice_shelf_mod | Function | Returns the a vector representing the current state of the internal reflectors in the ice shelf. This takes the form of a 1D array. The routien is only used for debugging purposes. |
shelf_precondition | ice_shelf_mod | Function | Provides a preconditioner for the nonlinear solver trying to bring the residual to zero. The Jacobian is approximated as a block matrix, where each block is a tridiagonal matrix using a finite difference method for differentiation. |
shelf_read_data | ice_shelf_mod | Subroutine | Reads the state of the ice shelf object from the specified group in an HDF5 file. This sets the thickness, the velocity, and parameter values. |
shelf_residual | ice_shelf_mod | Function | Returns the residual when the current state of the glacier is run through the system of equations describing it. The residual takes the form of a 1D array, with each element respresenting the residual for one of the equations in the system. |
shelf_set_time | ice_shelf_mod | Subroutine | Sets the time information held by the ice shelf object. This is the time at which the ice sheet is in its current state. |
shelf_solve_velocity | ice_shelf_mod | Subroutine | Computes the ice shelf velocity at the current time with the current ice thickness. |
shelf_state_vector | ice_shelf_mod | Function | Returns the state vector for the current state of the ice shelf. This takes the form of a 1D array. |
shelf_temperature | ice_shelf_mod | Function | Returns the density of the ice in the shelf, which is assumed to be uniform across its domain. |
shelf_thickness | ice_shelf_mod | Function | Returns the thickness of the ice shelf across its domain. |
shelf_time_step | ice_shelf_mod | Function | Calculates the time step for integrating the ice shelf, using the CFL condition. |
shelf_update | ice_shelf_mod | Subroutine | Updates the state of the ice shelf from its state vector. The state vector is a real array containing the value of each of the ice shelf's properties at each of the locations on the grid used in discretization. |
shelf_velocity | ice_shelf_mod | Function | Returns the velocity of the ice shelf across its domain. |
shelf_write_data | ice_shelf_mod | Subroutine | Writes the state of the ice shelf object to an HDF file in the specified group. This will consist of a thickness and a velocity dataset. |
simple_info | simple_plume_boundary_mod | Subroutine | Indicates that the lower boundary is Dirichlet and the upper boundary is Neumann. |
simple_plume_boundary | simple_plume_boundary_mod | Interface | |
simple_salinity_bound | simple_plume_boundary_mod | Function | Returns a field containing the salinity boundary values for the specified boundary location. |
simple_temperature_bound | simple_plume_boundary_mod | Function | Returns a field containing the temperature boundary values for the specified boundary location. |
simple_thickness_bound | simple_plume_boundary_mod | Function | Returns a field containing the thickness boundary values for the specified boundary location. |
simple_thickness_info | simple_plume_boundary_mod | Subroutine | Indicates that the lower boundary is Dirichlet and the upper boundary is free. |
simple_velocity_bound | simple_plume_boundary_mod | Function | Returns a field containing the velocity boundary values for the specified boundary location. |
solve_for | coriolis_block_mod | Subroutine | Inverts the linear portions of the plume momentum equation with the provided data. This is done by solving the linear ODE described in the documentation for the coriolis_block type. The block object must first have been initialised using the constructor. |
splev | splev.f | Subroutine | |
splev | transverse_coefficients_mod | Interface | |
state_vector | cryosphere_mod | Function | Returns the state vector for the current state of the cryosphere. This takes the form of a 1D array. This routine is mainly useful for unit-testing. |
static_plume_data_size | static_plume_mod | Function | Returns the number of elements in the plume's state vector. This is the size of the vector returned by state_vector and taken as an argument by update. |
static_plume_drag_parameter | static_plume_mod | Function | Computes and returns a quantity which may be necessary to determine the frictional drag the plume exerts on the bottom of the ice shelf. The plume would actually tend to exert no drag on the bottom of the ice shelf, but this method is present so that there is a consistent interface with the ground data type. |
static_plume_initialise | static_plume_mod | Subroutine | Instantiates a plume object with initial coniditions provided by the arguments.At present only a 1D model is supported. If information is provided for higher dimensions then it will be ignored. |
static_plume_melt | static_plume_mod | Function | Computes and returns the melt rate at the bottom of the ice shelf due to interaction with the plume. |
static_plume_read_data | static_plume_mod | Subroutine | Reads the state of the plume object from an HDF file in the specified group. This sets the thickness, velocity, temperature, salinity dataset, and parameter values. |
static_plume_solve | static_plume_mod | Subroutine | Would normally solve, but for this static implementation of the plume it does nothing. |
static_plume_state_vector | static_plume_mod | Function | Returns the state vector for the current state of the plume. This takes the form of a 1D array. |
static_plume_update | static_plume_mod | Subroutine | Updates the state of the plume from its state vector. The state vector is a real array containing the value of each of the plume's properties at each of the locations on the grid used in discretization. |
static_plume_water_density | static_plume_mod | Function | Computes and returns the density of the plume water beneath the ice shelf. The density of this water would vary depending on how much saline ambient water has been entrained into the plume versus how much fresh water has been released due to melting. However, the Boussinesq approximation is used here and only a single reference density is returned. |
static_plume_write_data | static_plume_mod | Subroutine | Writes the state of the plume object to an HDF file in the specified group. This will consist of a thickness, a velocity, a temperature, and a salinity dataset. |
statistics | rksuite_90 | Interface | |
statistics_r1 | rksuite_90 | Subroutine | |
step_integrate | rksuite_90 | Interface | |
step_integrate_r1 | rksuite_90 | Subroutine | |
step_r1 | rksuite_90 | Subroutine | |
stiff_r1 | rksuite_90 | Subroutine | |
tfqmr_solve | nitsol_mod | Subroutine | A wraper for the nitsol implementation of the transpose-free quasi-minimal residual method (TFQMR) for iteratively solving linear systems. This provides a more general interface not specifically intended for use with Newton iteration. It also uses Fortran 90 features to provide a more convenient call signature. |
time_step | cryosphere_mod | Function | Calculates an appropriate time step with which to integrate the cryosphere so as not to cause numerical instability. |
truerr_r1 | rksuite_90 | Subroutine | |
uniform_ambient_conditions | uniform_ambient_mod | Interface | |
uniform_gradient_assign | uniform_gradient_field_mod | Subroutine |
|
uniform_gradient_d_dx | uniform_gradient_field_mod | Function |
|
uniform_gradient_field | uniform_gradient_field_mod | Interface | |
uniform_gradient_gradient | uniform_gradient_field_mod | Function |
|
uniform_gradient_is_equal | uniform_gradient_field_mod | Function | Evaluates whether two scalar fields are equal within a tolerance,
specified by |
uniform_salinity | uniform_ambient_mod | Function | Returns the ambient ocean salinity. |
uniform_temperature | uniform_ambient_mod | Function | Returns the ambient ocean temperature. |
upstream_calculate | upstream_plume_mod | Subroutine | Calculates the boundary values to use at the current time with the current ice thickness. |
upstream_info | upstream_plume_mod | Subroutine | Indicates that the lower boundary is Dirichlet and the upper boundary is Neumann. |
upstream_plume_boundary | upstream_plume_mod | Interface | |
upstream_salinity_bound | upstream_plume_mod | Function | Returns a field containing the salinity boundary values for the specified boundary location. |
upstream_temperature_bound | upstream_plume_mod | Function | Returns a field containing the temperature boundary values for the specified boundary location. |
upstream_thickness_bound | upstream_plume_mod | Function | Returns a field containing the thickness boundary values for the specified boundary location. |
upstream_thickness_info | upstream_plume_mod | Subroutine | Indicates that the lower boundary is Dirichlet and the upper boundary is free. |
upstream_velocity_bound | upstream_plume_mod | Function | Returns a field containing the velocity boundary values for the specified boundary location. |
vector_bound | plume_boundary_mod | Function | Returns a field containing the boundary values for the specified boundary location. |
version | meta_mod | Interface | |
write_data | cryosphere_mod | Subroutine | Writes the data describing the cryosphere to the disc as an HDF5
file. |