Mimetic Operators Library Enhanced 4.0
Loading...
Searching...
No Matches
addscalarbc.h File Reference

Boundary Condition Application for Scalar PDEs. More...

#include "utils.h"
#include "gradient.h"
#include <vector>
#include <cassert>
Include dependency graph for addscalarbc.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  AddScalarBC::BC1D
 Structure to hold boundary condition data for 1D problems. More...
struct  AddScalarBC::BC2D
 Structure to hold boundary condition data for 2D problems. More...
struct  AddScalarBC::BC3D
 Structure to hold boundary condition data for 3D problems. More...

Namespaces

namespace  AddScalarBC

Functions

void AddScalarBC::addScalarBClhs (u16 k, u32 m, Real dx, const vec &dc, const vec &nc, sp_mat &Al, sp_mat &Ar)
 Compute LHS boundary condition matrices for a 1D problem.
void AddScalarBC::addScalarBClhs (u16 k, u32 m, Real dx, u32 n, Real dy, const vec &dc, const vec &nc, sp_mat &Al, sp_mat &Ar, sp_mat &Ab, sp_mat &At)
void AddScalarBC::addScalarBClhs (u16 k, u32 m, Real dx, u32 n, Real dy, u32 o, Real dz, const vec &dc, const vec &nc, sp_mat &Al, sp_mat &Ar, sp_mat &Ab, sp_mat &At, sp_mat &Af, sp_mat &Ak)
void AddScalarBC::addScalarBCrhs (vec &b, const vec &v, const uvec &indices)
 Apply boundary values to the RHS vector for a 1D problem.
void AddScalarBC::addScalarBCrhs (vec &b, const vec &dc, const vec &nc, const std::vector< vec > &v, const uvec &rl, const uvec &rr, const uvec &rb, const uvec &rt)
void AddScalarBC::addScalarBCrhs (vec &b, const vec &dc, const vec &nc, const std::vector< vec > &v, const uvec &rl, const uvec &rr, const uvec &rb, const uvec &rt, const uvec &rf, const uvec &rk)
 Apply boundary values to the RHS vector for a 3D problem.
void AddScalarBC::addScalarBC (sp_mat &A, vec &b, u16 k, u32 m, Real dx, const BC1D &bc)
 Apply boundary conditions to a 1D discrete operator and RHS.
void AddScalarBC::addScalarBC (sp_mat &A, vec &b, u16 k, u32 m, Real dx, u32 n, Real dy, const BC2D &bc)
 Apply boundary conditions to a 2D discrete operator and RHS.
void AddScalarBC::addScalarBC (sp_mat &A, vec &b, u16 k, u32 m, Real dx, u32 n, Real dy, u32 o, Real dz, const BC3D &bc)
 Apply boundary conditions to a 3D discrete operator and RHS.

Detailed Description

Boundary Condition Application for Scalar PDEs.

This file provides functions to add boundary conditions to discrete operators and right-hand side vectors for 1D, 2D, and 3D scalar PDEs.

Supports:

  • Dirichlet boundary conditions (a0 ≠ 0, b0 = 0)
  • Neumann boundary conditions (a0 = 0, b0 ≠ 0)
  • Robin boundary conditions (a0 ≠ 0, b0 ≠ 0)
  • Periodic boundary conditions (a0 = 0, b0 = 0)

date 2025/01/26 date modified 2026/02/26

Definition in file addscalarbc.h.