pub struct PatchField<T: Clone> {
pub bc: BoundaryCondition<T>,
pub values: Field<T>,
}Expand description
Boundary field for one patch: the BC type plus the current face values.
The values field always holds the latest face values (updated by
update_coeffs in Layer 3 operators). For FixedValue/FixedField the
values are set at construction and never change. For ZeroGradient and
Calculated they are written by the operator code.
Fields§
§bc: BoundaryCondition<T>The boundary condition applied on this patch.
values: Field<T>Current face values for this patch (length == patch.size).
Implementations§
Source§impl PatchField<f64>
impl PatchField<f64>
Sourcepub fn fixed_value(size: usize, v: f64) -> Self
pub fn fixed_value(size: usize, v: f64) -> Self
Dirichlet patch holding a uniform scalar v on all size faces.
Sourcepub fn zero_gradient(size: usize) -> Self
pub fn zero_gradient(size: usize) -> Self
Zero-gradient (Neumann) scalar patch of size faces; values default to
0.0 and are overwritten by the operator that owns them.
Source§impl PatchField<Vector3>
impl PatchField<Vector3>
Sourcepub fn fixed_value_vec(size: usize, v: Vector3) -> Self
pub fn fixed_value_vec(size: usize, v: Vector3) -> Self
Dirichlet patch holding a uniform Vector3 value v on all size faces.
Sourcepub fn zero_gradient_vec(size: usize) -> Self
pub fn zero_gradient_vec(size: usize) -> Self
Zero-gradient (Neumann) vector patch of size faces; values default to
Vector3::ZERO and are overwritten by the operator that owns them.
Source§impl PatchField<Tensor>
impl PatchField<Tensor>
Sourcepub fn fixed_value_tensor(size: usize, v: Tensor) -> Self
pub fn fixed_value_tensor(size: usize, v: Tensor) -> Self
Dirichlet patch holding a uniform Tensor value.
Sourcepub fn zero_gradient_tensor(size: usize) -> Self
pub fn zero_gradient_tensor(size: usize) -> Self
Zero-gradient (Neumann) patch for a Tensor field; values default to
Tensor::ZERO and are overwritten by the operator that owns them.
Source§impl PatchField<SymmTensor>
impl PatchField<SymmTensor>
Sourcepub fn fixed_value_symm_tensor(size: usize, v: SymmTensor) -> Self
pub fn fixed_value_symm_tensor(size: usize, v: SymmTensor) -> Self
Dirichlet patch holding a uniform SymmTensor value.
Sourcepub fn zero_gradient_symm_tensor(size: usize) -> Self
pub fn zero_gradient_symm_tensor(size: usize) -> Self
Zero-gradient (Neumann) patch for a SymmTensor field; values default to
SymmTensor::ZERO and are overwritten by the operator that owns them.