Basilisk CFD
Adaptive Cartesian mesh PDE framework
Loading...
Searching...
No Matches
discharge.h File Reference

Go to the source code of this file.

Data Structures

struct  Eta_b
 

Functions

static double bflux (struct Eta_b p, double eta_b)
 
static double falsepos (struct Eta_b p, double binf, double qinf, double bsup, double qsup)
 To find the water level \(\eta_b\) corresponding to the flow rate \(Q_b\) we want to impose, we need to invert the function above i.e.
 
double eta_b (double Q_b, bid b, scalar limit={-1}, double value=0, double prec=0.001)
 

Function Documentation

◆ bflux()

static double bflux ( struct Eta_b  p,
double  eta_b 
)
static

Definition at line 30 of file discharge.h.

References dry, dtmax, eta_b(), h, hn, scalar::i, kurganov(), max, p, sign(), u, x, and zb.

Referenced by falsepos().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ eta_b()

double eta_b ( double  Q_b,
bid  b,
scalar  limit = {-1},
double  value = 0,
double  prec = 0.001 
)

User interface

Given a target flux \(Q_b\) and a boundary \(b\) (optionally limited to points for which limit[] = value), this function returns the corresponding water level \(\eta_b\).

We try to find good bounds on the solution.

Definition at line 89 of file discharge.h.

Referenced by bflux().

Here is the caller graph for this function:

◆ falsepos()

static double falsepos ( struct Eta_b  p,
double  binf,
double  qinf,
double  bsup,
double  qsup 
)
static

To find the water level \(\eta_b\) corresponding to the flow rate \(Q_b\) we want to impose, we need to invert the function above i.e.

find \(\eta_b\) such that

\[ Q[z_b,u_n](\eta_b) = Q_b \]

We do this using the false position method.

Definition at line 58 of file discharge.h.

References bflux(), LINENO, n, p, and x.

Here is the call graph for this function: