GridapROMs.ParamSteady

GridapROMs.ParamSteady.FEDomainsType
struct FEDomains{A,B}
  domains_res::A
  domains_jac::B
end

Fields:

  • domains_res: triangulations relative to the residual (nothing by default)
  • domains_jac: triangulations relative to the Jacobian (nothing by default)
source
GridapROMs.ParamSteady.JointDomainsType
struct JointDomains <: TriangulationStyle end

Trait for a FE operator indicating that residuals/Jacobiansin this operator should be computed summing the contributions relative to each triangulation as occurs in Gridap

source
GridapROMs.ParamSteady.LinearNonlinearParamFEOperatorType
struct LinearNonlinearParamFEOperator{O<:UnEvalOperatorType,T<:TriangulationStyle} <: ParamFEOperator{O,T}
  op_linear::ParamFEOperator
  op_nonlinear::ParamFEOperator
end

Interface to accommodate the separation of terms depending on their linearity in a nonlinear problem. This allows to build and store once and for all linear residuals/Jacobians, and in the Newton-like iterations only evaluate and assemble only the nonlinear components

source
GridapROMs.ParamSteady.ParamFEOpFromWeakFormType
struct ParamFEOpFromWeakForm{O<:UnEvalOperatorType,T<:TriangulationStyle} <: ParamFEOperator{O,T}
  res::Function
  jac::Function
  pspace::ParamSpace
  assem::Assembler
  trial::FESpace
  test::FESpace
  domains::FEDomains
end

Most standard instance of a parametric FE operator

source
GridapROMs.ParamSteady.ParamFEOperatorType
abstract type ParamFEOperator{O<:UnEvalOperatorType,T<:TriangulationStyle} <: FEOperator end

Parametric extension of a FEOperator in Gridap. Compared to a standard FEOperator, there are the following novelties:

  • a ParamSpace is provided, so that parametric realizations can be extracted directly from the ParamFEOperator
  • a function representing a norm matrix is provided, so that errors in the desired norm can be automatically computed

Subtypes:

source
GridapROMs.ParamSteady.ParamOpFromFEOpType
struct ParamOpFromFEOp{O<:UnEvalOperatorType,T<:TriangulationStyle} <: ParamOperator{O,T}
  op::ParamFEOperator{O,T}
end

Wrapper that transforms a ParamFEOperator into an ParamOperator

source
GridapROMs.ParamSteady.ParamOperatorType
abstract type ParamOperator{O<:UnEvalOperatorType,T<:TriangulationStyle} <: NonlinearParamOperator end

Type representing algebraic operators when solving parametric differential problems

source
GridapROMs.ParamSteady.SplitDomainsType
struct SplitDomains <: TriangulationStyle end

Trait for a FE operator indicating that residuals/Jacobiansin this operator should be computed keeping the contributions relative to each triangulation separate

source
GridapROMs.ParamSteady.UnEvalOperatorTypeType
abstract type UnEvalOperatorType <: GridapType end

Type representing operators that are not evaluated yet. This may include operators representing transient problems (although the implementation in Gridap differs), parametric problems, and a combination thereof. Could become a supertype of ODEOperatorType in Gridap

source
GridapROMs.ParamSteady.UnEvalTrialFESpaceType
struct UnEvalTrialFESpace{A,B} <: SingleFieldFESpace
  space::A
  space0::B
  dirichlet::Union{Function,AbstractVector{<:Function}}
end

Struct representing trial FE spaces that are not evaluated yet. This may include FE spaces representing transient problems (although the implementation in Gridap, called TransientTrialFESpace, does not fall into this category), parametric problems, and transient-parametric problems.

source
GridapROMs.ParamSteady.collect_cell_matrix_for_trianMethod
function collect_cell_matrix_for_trian(
  trial::FESpace,
  test::FESpace,
  a::DomainContribution,
  strian::Triangulation
  ) -> Tuple{Vector{<:Any},Vector{<:Any},Vector{<:Any}}

Computes the cell-wise data needed to assemble a global sparse matrix for a given input triangulation strian

source
GridapROMs.ParamSteady.collect_cell_vector_for_trianMethod
function collect_cell_vector_for_trian(
  test::FESpace,
  a::DomainContribution,
  strian::Triangulation
  ) -> Tuple{Vector{<:Any},Vector{<:Any}}

Computes the cell-wise data needed to assemble a global vector for a given input triangulation strian

source
GridapROMs.ParamSteady.get_param_spaceMethod
get_param_space(feop::ParamFEOperator) -> ParamSpace
get_param_space(feop::TransientParamFEOperator) -> TransientParamSpace

Returns the space of parameters contained in feop

source