|
peclet.voro 1.0.4
Device-native moving-particle Voronoi dynamics
|
The covolume NS solver state: face fluxes u, cell pressure p (from the last projection). More...
#include <covolume.hpp>
Public Types | |
| using | Exec = peclet::core::ExecSpace |
Public Member Functions | |
| template<class Ex > | |
| void | setExchange (Ex &ex) |
| void | setup (const FaceMesh< Real > &mesh, Real viscosity, bool amg=false) |
| void | setWallVelocity (const DV< Real > &Uw) |
| void | applyWallFlux (const DV< Real > &uf) const |
| Impose the boundary fluxes on a face field. | |
| void | setDec (const TessellationView< Real > &view) |
| Install the DEC viscous term from the published view (facet-edge CSR with edge lengths). | |
| void | rhs (const DV< Real > &uf, const DV< Real > &out) |
| k = Rᵀ a(u): the face-normal tendency (no pressure). | |
| void | project (const DV< Real > &uf, Real dt) |
| Make uf divergence-free: L φ = div uf / dt, uf −= dt grad φ; p = φ. | |
| void | step (Real dt) |
| One SSP-RK3 step with a projection after every stage. | |
| Real | kineticEnergy () const |
| ½⟨u,u⟩_F — the energy the scheme conserves. | |
| Real | maxDivergence () |
| max_i |div u|_i | |
Public Attributes | |
| FaceMesh< Real > | m |
| Real | nu = 0 |
| Real | convScale = 1 |
| DV< Real > | u |
| DV< Real > | p |
| DV< Real > | force |
| DV< Real > | Uwall |
| DV< Real > | ub |
| bool | wallQuadratic = true |
| DV< Real > | wg |
| DV< Real > | g9w |
| bool | viscousDEC = false |
| DecEdges< Real > | dec |
| DV< Real > | decOut |
| DV< Real > | decDiv |
| DV< Real > | U |
| DV< Real > | a |
| DV< Real > | k |
| DV< Real > | u1 |
| DV< Real > | u2 |
| DV< Real > | div |
| DV< Real > | gphi |
| PressureSolver< Real > | poisson |
| std::function< void(const DV< Real > &, int)> | exchange |
| std::function< Real(Real)> | sum |
| std::function< Real(Real)> | max |
| Real | lastDiv = 0 |
The covolume NS solver state: face fluxes u, cell pressure p (from the last projection).
| using peclet::voro::fv::CovolumeNS< Real >::Exec = peclet::core::ExecSpace |
|
inline |
Impose the boundary fluxes on a face field.
|
inline |
½⟨u,u⟩_F — the energy the scheme conserves.
|
inline |
max_i |div u|_i
|
inline |
Make uf divergence-free: L φ = div uf / dt, uf −= dt grad φ; p = φ.
|
inline |
k = Rᵀ a(u): the face-normal tendency (no pressure).
|
inline |
Install the DEC viscous term from the published view (facet-edge CSR with edge lengths).
|
inline |
|
inline |
|
inline |
Prescribe the boundary-face velocity (3 × nBoundary; empty = no-slip): boundary fluxes u_f = U_wall·n; the viscous wall flux and the convective wall value read U_wall.
|
inline |
One SSP-RK3 step with a projection after every stage.
| DV<Real> peclet::voro::fv::CovolumeNS< Real >::a |
| Real peclet::voro::fv::CovolumeNS< Real >::convScale = 1 |
| DecEdges<Real> peclet::voro::fv::CovolumeNS< Real >::dec |
| DV<Real> peclet::voro::fv::CovolumeNS< Real >::decDiv |
| DV<Real> peclet::voro::fv::CovolumeNS< Real >::decOut |
| DV<Real> peclet::voro::fv::CovolumeNS< Real >::div |
| std::function<void(const DV<Real>&, int)> peclet::voro::fv::CovolumeNS< Real >::exchange |
| DV<Real> peclet::voro::fv::CovolumeNS< Real >::force |
| DV<Real> peclet::voro::fv::CovolumeNS< Real >::g9w |
| DV<Real> peclet::voro::fv::CovolumeNS< Real >::gphi |
| DV<Real> peclet::voro::fv::CovolumeNS< Real >::k |
| Real peclet::voro::fv::CovolumeNS< Real >::lastDiv = 0 |
| FaceMesh<Real> peclet::voro::fv::CovolumeNS< Real >::m |
| std::function<Real(Real)> peclet::voro::fv::CovolumeNS< Real >::max |
| Real peclet::voro::fv::CovolumeNS< Real >::nu = 0 |
| DV<Real> peclet::voro::fv::CovolumeNS< Real >::p |
| PressureSolver<Real> peclet::voro::fv::CovolumeNS< Real >::poisson |
| std::function<Real(Real)> peclet::voro::fv::CovolumeNS< Real >::sum |
| DV<Real> peclet::voro::fv::CovolumeNS< Real >::u |
| DV<Real> peclet::voro::fv::CovolumeNS< Real >::U |
| DV<Real> peclet::voro::fv::CovolumeNS< Real >::u1 |
| DV<Real> peclet::voro::fv::CovolumeNS< Real >::u2 |
| DV<Real> peclet::voro::fv::CovolumeNS< Real >::ub |
| DV<Real> peclet::voro::fv::CovolumeNS< Real >::Uwall |
| bool peclet::voro::fv::CovolumeNS< Real >::viscousDEC = false |
| bool peclet::voro::fv::CovolumeNS< Real >::wallQuadratic = true |
| DV<Real> peclet::voro::fv::CovolumeNS< Real >::wg |