# Private types and functions

Documentation for `ClimaSeaIce.jl`

's internal interfaces.

## ClimaSeaIce

`ClimaSeaIce.LinearLiquidus`

— Type```
LinearLiquidus(FT=Float64,
slope = 0.054, # psu / ᵒC
freshwater_melting_temperature = 0) # ᵒC
```

Return a linear model for the dependence of the melting temperature of saltwater on salinity,

\[Tₘ(S) = T₀ - m S ,\]

where $Tₘ(S)$ is the melting temperature as a function of salinity $S$, $T₀$ is the melting temperature of freshwater, and $m$ is the ratio between the melting temperature and salinity (in other words the linear model should be thought of as defining $m$ and could be written $m ≡ (T₀ - Tₘ) / S$. The signs are arranged so that $m > 0$ for saltwater).

The defaults assume that salinity is given in practical salinity units `psu`

and temperature is in degrees Celsius.

Note: the function `melting_temperature(liquidus, salinity)`

returns the melting temperature given `salinity`

.

## ClimaSeaIce.EnthalpyMethodSeaIceModels

`ClimaSeaIce.EnthalpyMethodSeaIceModels.EnthalpyMethodSeaIceModel`

— Method`EnthalpyMethodSeaIceModel(; grid, kw...)`

Return a thermodynamic model for ice sandwiched between an atmosphere and ocean on an Eulerian grid.

`ClimaSeaIce.EnthalpyMethodSeaIceModels.compute_tendencies!`

— MethodCalculate the right-hand-side of the free surface displacement (η) equation.