Flumy [Free API]
Process based model for meandering chanelized systems
Public Member Functions | List of all members
Flumy Class Reference

Top level entry point of the Flumy "Lite" API (Free) More...

Detailed Description

Top level entry point of the Flumy "Lite" API (Free)

After creating an object of 'Flumy' class, the user can launch a non conditional Flumy simulation (Fluvial system) and then, retrieve the deposited sediments in a 3D block either vertically regularly discretized or not (see iDomain class ).

This "Lite" API permits using the non-expert user parameters only (see section 3.2.1 in our user guide by clicking here: https://soft.mines-paristech.fr/flumy/userguide.pdf.

The simulation always starts at 0m initial elevation. There is no grid orientation. The flow direction is always oriented along Ox grid axis.

The "Lite" API doesn't include conditioning feature or external forcing actions (basement topography, initial centerline, etc...).

By changing the seed only (and keeping all other non-expert parameters values), the user can launch a lot of different simulations which have the same characteristics (equi-probable).

Public Member Functions

 Flumy (int nx, int ny, double mesh, bool verbose=false)
 Create a Flumy simulator given the output grid parameters. More...
 
virtual ~Flumy ()
 
bool launch (int seed, double hmax, int isbx, double ng, double zul=-1., int niter=-1, bool lvb=true)
 Launch a non conditional Flumy simulation. More...
 
const iDomaingetDomain () const
 Get the Domain object in order to access to simulated deposits. More...
 
int getAge () const
 Return the last age of the simulation (number of iterations since the begining) More...
 
double getAggradationRate () const
 Return the observed aggradation rate (m/it) More...
 
double getMigrationRate () const
 Return the observed channel lateral migration rate (m/it) More...
 
double getMeanVelocityPerturbation () const
 Return the observed mean velocity perturbation among all meanders (m) More...
 
double getSinuosity () const
 Return the current channel observed sinuosity (formula from Allen, 1983) More...
 
double getTortuosity () const
 Return the current channel observed tortuosity. More...
 
double getWavelength () const
 Return the current channel observed wave length (m) More...
 
double getSandBodyExtension () const
 Return the current channel observed mean sandbodies extension (m) More...
 
int getNbCutoff () const
 Return the number of meander cutoffs occured since the simulation begining. More...
 

Constructor & Destructor Documentation

◆ Flumy()

Flumy::Flumy ( int  nx,
int  ny,
double  mesh,
bool  verbose = false 
)

Create a Flumy simulator given the output grid parameters.

Parameters
nxNumber of output grid nodes along Ox axis
nyNumber of output grid nodes along Oy axis
meshOutput grid mesh (in meter)
verboseActivate/Deactivate verbosity

◆ ~Flumy()

virtual Flumy::~Flumy ( )
virtual

Member Function Documentation

◆ getAge()

int Flumy::getAge ( ) const

Return the last age of the simulation (number of iterations since the begining)

◆ getAggradationRate()

double Flumy::getAggradationRate ( ) const

Return the observed aggradation rate (m/it)

◆ getDomain()

const iDomain* Flumy::getDomain ( ) const

Get the Domain object in order to access to simulated deposits.

Returns
iDomain object (see iDomain)

◆ getMeanVelocityPerturbation()

double Flumy::getMeanVelocityPerturbation ( ) const

Return the observed mean velocity perturbation among all meanders (m)

◆ getMigrationRate()

double Flumy::getMigrationRate ( ) const

Return the observed channel lateral migration rate (m/it)

◆ getNbCutoff()

int Flumy::getNbCutoff ( ) const

Return the number of meander cutoffs occured since the simulation begining.

◆ getSandBodyExtension()

double Flumy::getSandBodyExtension ( ) const

Return the current channel observed mean sandbodies extension (m)

◆ getSinuosity()

double Flumy::getSinuosity ( ) const

Return the current channel observed sinuosity (formula from Allen, 1983)

◆ getTortuosity()

double Flumy::getTortuosity ( ) const

Return the current channel observed tortuosity.

◆ getWavelength()

double Flumy::getWavelength ( ) const

Return the current channel observed wave length (m)

◆ launch()

bool Flumy::launch ( int  seed,
double  hmax,
int  isbx,
double  ng,
double  zul = -1.,
int  niter = -1,
bool  lvb = true 
)

Launch a non conditional Flumy simulation.

This method launch a non conditional simulation (fluvial environment) either:

  • Up to a given constant upper limit surface (fill a block from 0m to the upper limit)
  • For a given number of iterations (start at 0m and run a certain number of iterations)
Parameters
seedRoot seed of the simulation (see section 3.8 in the user guide)
hmaxMaximum channel depth (m) (see section 3.2.1)
isbxSandbodies extension index (see section 3.2.1)
ngRequired Net to Gross (%) (see section 3.2.1)
zulConstant upper limit surface (m) (exclusive with niter)
niterNumber of iterations to be run (exclusive with zul)
lvbActivate (true) or deactivate (false) local avulsion and levee breaches (see section 3.6.1)
Returns
true If the simulation ends successfully
false Otherwise