Objectives
Cthonios.AbstractObjective
— Typeabstract type AbstractObjective
Abstract base objective type.
Cthonios.AbstractObjectiveParameters
— Typeabstract type AbstractObjectiveParameters
Abstract base type for objective function parameters.
Cthonios.Objective
— Typestruct Objective{D, F1, F2, F3, T}
domain::Any
value::Any
gradient::Any
hessian::Any
timer::Any
Objective type for evaluating objective functions. The functions correspond to quadrature level evaluations of the objective function, it's gradient, and it's hessian respectively. domain
- A domain object value
- A function for the quadrature level objective function evaluation. gradient
- A function for the quadrature level objective function gradient evaluation. hessian
- A function for the quadrature level objective hessian evaluation. timer
- A timer that's already setup.
Cthonios.ObjectiveParameters
— Typestruct ObjectiveParameters{U1, T, B, U2, U3} <: Cthonios.AbstractObjectiveParameters
X::Any
t::Any
Ubc::Any
U::Any
hvp_scratch::Any
Type for objective function parameters for design parameters such as coordinates, time, bc values, properties state variables, and some scratch arrays.
Cthonios.ObjectiveParameters
— MethodObjectiveParameters(
o::Objective,
times
) -> ObjectiveParameters{U1, _A, B} where {U1<:(FiniteElementContainers.VectorizedNodalField{_A, 2, _B, _C, _D} where {_A, _B, _C, _D<:AbstractVector{_A}}), _A, B<:(Vector)}
Constructor for a ObjectiveParameters
type. o
- Objective function object. times
- Times object.
Cthonios.gradient!
— Methodgradient!(
g,
o::Objective,
U,
X::FiniteElementContainers.NodalField
)
Cthonios.gradient!
— Methodgradient!(g, o::Objective, Uu, p::ObjectiveParameters)
Cthonios.hessian!
— Methodhessian!(
asm::FiniteElementContainers.StaticAssembler,
o::Objective,
Uu,
p::ObjectiveParameters
) -> Any
Cthonios.hvp!
— Methodhvp!(
Hv::AbstractVector,
o::Objective,
Uu,
p::ObjectiveParameters,
Vv
) -> Any
Cthonios.hvp!
— Methodhvp!(
Hv::FiniteElementContainers.NodalField,
o::Objective,
Uu,
p::ObjectiveParameters,
Vv
) -> Any
Cthonios.objective!
— Methodobjective!(
val,
o::Objective,
Uu,
p::ObjectiveParameters
) -> Any
Cthonios.objective
— Methodobjective(
o::Objective,
U::FiniteElementContainers.NodalField,
Ubc,
X::FiniteElementContainers.NodalField
) -> Vector{Float64}
Cthonios.step!
— Methodstep!(p::ObjectiveParameters)
Cthonios.update_dirichlet_vals!
— Methodupdate_dirichlet_vals!(p::ObjectiveParameters, o::Objective)