hexed 0.3.0
 
Loading...
Searching...
No Matches
hexed::Random_func Class Reference

Returns a random output uniformly distributed in a user-specified range. More...

#include <Spacetime_func.hpp>

Inheritance diagram for hexed::Random_func:
hexed::Spacetime_func hexed::Domain_func hexed::Qpoint_func hexed::Surface_func hexed::Output_data hexed::Boundary_func hexed::Output_data

Public Member Functions

 Random_func (std::vector< double > means, std::vector< double > variations, int granularity=1e5)
 
int n_var (int n_dim) const override
 number of output variables when called on n_dim-dimensional input
 
std::vector< double > operator() (std::vector< double > pos, double time) const override
 
- Public Member Functions inherited from hexed::Spacetime_func
std::vector< double > operator() (std::vector< double > pos, double time, std::vector< double > state) const override
 
- Public Member Functions inherited from hexed::Domain_func
std::vector< double > operator() (Element &, const Basis &, int i_qpoint, double time) const override
 
std::vector< double > operator() (std::vector< double > pos, double time, std::vector< double > state, std::vector< double > outward_normal) const override
 normal is surface unit normal vector pointing out of the surface (into the domain).
 
- Public Member Functions inherited from hexed::Output_data
virtual std::string variable_name (int n_dim, int i_var) const
 name of i_varth variable (for plotting) when called on n_dim-dimensional input
 
- Public Member Functions inherited from hexed::Surface_func
std::vector< double > operator() (Boundary_connection &, int i_fqpoint, double time) const override
 

Detailed Description

Returns a random output uniformly distributed in a user-specified range.

Constructor & Destructor Documentation

◆ Random_func()

hexed::Random_func::Random_func ( std::vector< double > means,
std::vector< double > variations,
int granularity = 1e5 )
Parameters
meansThe mean of each variable. The size of means determines the number of output variables.
variationsThe size of the range for each variable. Must be the same size as means.
granularityResults will be divisible by 1./granularity.

Output variable i will be in the range [means[i] - variations[i]/2, means[i] + variations[i]/2].

Member Function Documentation

◆ n_var()

int hexed::Random_func::n_var ( int n_dim) const
inlineoverridevirtual

number of output variables when called on n_dim-dimensional input

Implements hexed::Output_data.

◆ operator()()

std::vector< double > hexed::Random_func::operator() ( std::vector< double > pos,
double time ) const
overridevirtual

Implements hexed::Spacetime_func.


The documentation for this class was generated from the following files: