pub struct BoundaryConditions { /* private fields */ }Expand description
Boundary conditions
Implementations§
Source§impl BoundaryConditions
impl BoundaryConditions
pub fn new() -> Self
Sourcepub fn set_boundary(
&mut self,
field_id: &str,
boundary_type: BoundaryType,
value: f64,
)
pub fn set_boundary( &mut self, field_id: &str, boundary_type: BoundaryType, value: f64, )
Register a boundary condition for a field.
The value is interpreted according to the boundary type:
- Dirichlet: the fixed value at the boundary
- Neumann: the gradient (du/dn) at the boundary
- Robin: the target value for the combined condition
- Periodic: ignored (periodic copies from the opposite edge)
Sourcepub fn set_time_dependent_boundary(
&mut self,
field_id: &str,
boundary_type: BoundaryType,
time_fn: TimeFunction,
)
pub fn set_time_dependent_boundary( &mut self, field_id: &str, boundary_type: BoundaryType, time_fn: TimeFunction, )
Register a time-dependent boundary condition for a field.
Sourcepub fn apply_to_field(&self, field: &mut PhysicsField, time: f64)
pub fn apply_to_field(&self, field: &mut PhysicsField, time: f64)
Apply boundary conditions to a field’s edge cells based on the registered type.
For a 1-D field the edge cells are index 0 (left) and index n-1 (right).
Auto Trait Implementations§
impl Freeze for BoundaryConditions
impl RefUnwindSafe for BoundaryConditions
impl Send for BoundaryConditions
impl Sync for BoundaryConditions
impl Unpin for BoundaryConditions
impl UnsafeUnpin for BoundaryConditions
impl UnwindSafe for BoundaryConditions
Blanket Implementations§
§impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
Aggregate shares in an MPC protocol.
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more