Domains
Types
ClimaCore.Domains.AbstractDomain — Type
AbstractDomainSupertype for domains, which represent regions of space.
Subtypes:
IntervalDomain: a closed interval along one coordinate direction.RectangleDomain: the product of two interval domains.SphereDomain: the surface of a sphere.
ClimaCore.Domains.IntervalDomain — Type
IntervalDomain(coord_min, coord_max; periodic = false, boundary_names = nothing)
IntervalDomain(coords::ClosedInterval; kwargs...)Construct an IntervalDomain, the closed interval between the 1D coordinates coord_min and coord_max (or the endpoints of coords).
Keyword Arguments
periodic = false: whether the interval is periodic.boundary_names = nothing: aTuple{Symbol, Symbol}naming the lower and upper boundaries. Required whenperiodicisfalse; passing neither keyword throws anArgumentError.
ClimaCore.Domains.RectangleDomain — Type
RectangleDomain(interval1::IntervalDomain, interval2::IntervalDomain)
RectangleDomain(x1::ClosedInterval, x2::ClosedInterval;
x1periodic = false,
x2periodic = false,
x1boundary = nothing,
x2boundary = nothing,
)Construct a RectangleDomain, the product of two interval domains in the horizontal. interval1 * interval2 is equivalent to the first form.
Keyword Arguments
x1periodic = false,x2periodic = false: whether each direction is periodic.x1boundary = nothing,x2boundary = nothing:Tuple{Symbol, Symbol}boundary names for each direction. Required for every direction that is not periodic.
ClimaCore.Domains.SphereDomain — Type
SphereDomain(radius)Domain representing the surface of a sphere with radius radius [m]. Its coordinate type is Geometry.Cartesian123Point, and it has no boundaries. A non-float radius is promoted, so SphereDomain(1000) gives a SphereDomain{Float64}.
Interfaces
ClimaCore.Domains.boundary_names — Function
boundary_names(obj::Union{AbstractDomain, AbstractMesh, AbstractTopology})Return a tuple or vector of the unique boundary names of a spatial domain, mesh, or topology. Periodic directions contribute no names.
ClimaCore.Domains.coordinate_type — Function
coordinate_type(domain::AbstractDomain)The Geometry.AbstractPoint type of the coordinates of domain: for example Geometry.ZPoint{FT} for a vertical IntervalDomain, Geometry.XYPoint{FT} for a RectangleDomain, and Geometry.Cartesian123Point{FT} for a SphereDomain.
Domains.coordinate_type(topology::Topologies.AbstractTopology)Return the Geometry.AbstractPoint type of the coordinates of the domain of topology, e.g. Geometry.ZPoint{FT} for a vertical interval topology and Geometry.Cartesian123Point{FT} for a cubed-sphere topology.
ClimaCore.Domains.z_min — Function
z_min(::AbstractSpace)Return the minimum z coordinate of the vertical domain of space.
z_min(domain::IntervalDomain)Return the domain minimum along the z direction.
ClimaCore.Domains.z_max — Function
z_max(::AbstractSpace)Return the maximum z coordinate of the vertical domain of space.
z_max(domain::IntervalDomain)Return the domain maximum along the z direction.
ClimaCore.Domains.radius — Function
radius(domain::SphereDomain)The radius of the sphere [m].