Doxygen 1.17.0
Toolkit for Adaptive Stochastic Modeling and Non-Intrusive ApproximatioN: Tasmanian v8.3
Loading...
Searching...
No Matches
Strong Typed Factories

Classes

struct  TasGrid::IsotropicWeights
 Strong type for creating isotropic weights. More...
struct  TasGrid::AnsitropicWeights
 Strong type for the vector of integers representing the anisotropic weighs. More...
struct  TasGrid::AlphaValue
 Strong type for the alpha parameter used by some rules and distributions. More...
struct  TasGrid::BetaValue
 Strong type for the beta parameter used by some rules and distributions. More...
struct  TasGrid::CustomRuleFilename
 Strong type for the custom filename. More...
struct  TasGrid::NoLevelLimits
 Strong type for creating a grid with no level limits. More...
struct  TasGrid::LevelLimits
 Strong type for the vector of integers representing the anisotropic weighs. More...

Enumerations

enum class  TasGrid::NumDimensions : int
 Strong type for the number of dimensions.
enum class  TasGrid::NumOutputs : int
 Strong type for the number of outputs.
enum class  TasGrid::DepthLevel : int
 Strong type for the depth (e.g., level/polynomial-order) of the grid.
enum class  TasGrid::BasisOrder : int
 Strong type for the maximum polynomial order of the grid.

Functions

TasmanianSparseGrid TasGrid::makeGlobalGrid (NumDimensions dims, NumOutputs outs, DepthLevel depth, TypeDepth type, TypeOneDRule rule, AnsitropicWeights const &anisotropic_weights=IsotropicWeights{}, AlphaValue alpha=AlphaValue{}, BetaValue beta=BetaValue{}, CustomRuleFilename const &custom_filename=CustomRuleFilename{}, LevelLimits const &level_limits=NoLevelLimits{})
 Factory method for Global Grid using strong types.
TasmanianSparseGrid TasGrid::makeSequenceGrid (NumDimensions dims, NumOutputs outs, DepthLevel depth, TypeDepth type, TypeOneDRule rule, AnsitropicWeights const &anisotropic_weights=IsotropicWeights{}, LevelLimits const &level_limits=NoLevelLimits{})
 Factory method for Sequence Grid using strong types.
TasmanianSparseGrid TasGrid::makeLocalPolynomialGrid (NumDimensions dims, NumOutputs outs, DepthLevel depth, BasisOrder order=BasisOrder{1}, TypeOneDRule rule=rule_localp, LevelLimits const &level_limits=NoLevelLimits{})
 Factory method for Local Polynomial Grid using strong types.
TasmanianSparseGrid TasGrid::makeWaveletGrid (NumDimensions dims, NumOutputs outs, DepthLevel depth, BasisOrder order=BasisOrder{1}, LevelLimits const &level_limits=NoLevelLimits{})
 Factory method for Wavelet Grid using strong types.
TasmanianSparseGrid TasGrid::makeFourierGrid (NumDimensions dims, NumOutputs outs, DepthLevel depth, TypeDepth type, AnsitropicWeights const &anisotropic_weights=IsotropicWeights{}, LevelLimits const &level_limits=NoLevelLimits{})
 Factory method for Wavelet Grid using strong types.

Detailed Description

The sparse grid capabilities of Tasmanian are encapsulated in a single master class TasGrid::TasmanianSparseGrid.

Function Documentation

◆ makeGlobalGrid()

TasmanianSparseGrid TasGrid::makeGlobalGrid ( NumDimensions dims,
NumOutputs outs,
DepthLevel depth,
TypeDepth type,
TypeOneDRule rule,
AnsitropicWeights const & anisotropic_weights = IsotropicWeights{},
AlphaValue alpha = AlphaValue{},
BetaValue beta = BetaValue{},
CustomRuleFilename const & custom_filename = CustomRuleFilename{},
LevelLimits const & level_limits = NoLevelLimits{} )
inline

Factory method for Global Grid using strong types.

Allows for expressive initializations, e.g.,

CustomRuleFilename{}, // works only with rule_customtabulated
);
@ rule_gaussjacobi
Non-nested rule optimized for integral of the form .
Definition tsgEnumerates.hpp:350
@ type_level
Ignoring the polynomial space, use rules with index .
Definition tsgEnumerates.hpp:212
NumDimensions
Strong type for the number of dimensions.
Definition TasmanianSparseGrid.hpp:2450
DepthLevel
Strong type for the depth (e.g., level/polynomial-order) of the grid.
Definition TasmanianSparseGrid.hpp:2462
NumOutputs
Strong type for the number of outputs.
Definition TasmanianSparseGrid.hpp:2456
TasmanianSparseGrid makeGlobalGrid(int dimensions, int outputs, int depth, TypeDepth type, TypeOneDRule rule, std::vector< int > const &anisotropic_weights=std::vector< int >(), double alpha=0.0, double beta=0.0, const char *custom_filename=nullptr, std::vector< int > const &level_limits=std::vector< int >())
Factory method, creates a new grid and calls TasmanianSparseGrid::makeGlobalGrid().
Definition TasmanianSparseGrid.hpp:2333
Strong type for the alpha parameter used by some rules and distributions.
Definition TasmanianSparseGrid.hpp:2512
Strong type for the vector of integers representing the anisotropic weighs.
Definition TasmanianSparseGrid.hpp:2493
Strong type for the beta parameter used by some rules and distributions.
Definition TasmanianSparseGrid.hpp:2527
Strong type for the custom filename.
Definition TasmanianSparseGrid.hpp:2540
Strong type for creating a grid with no level limits.
Definition TasmanianSparseGrid.hpp:2555

◆ makeSequenceGrid()

TasmanianSparseGrid TasGrid::makeSequenceGrid ( NumDimensions dims,
NumOutputs outs,
DepthLevel depth,
TypeDepth type,
TypeOneDRule rule,
AnsitropicWeights const & anisotropic_weights = IsotropicWeights{},
LevelLimits const & level_limits = NoLevelLimits{} )
inline

Factory method for Sequence Grid using strong types.

Allows for expressive initializations, e.g.,

);
TasmanianSparseGrid makeSequenceGrid(int dimensions, int outputs, int depth, TypeDepth type, TypeOneDRule rule, std::vector< int > const &anisotropic_weights=std::vector< int >(), std::vector< int > const &level_limits=std::vector< int >())
Factory method, creates a new grid and calls TasmanianSparseGrid::makeSequenceGrid().
Definition TasmanianSparseGrid.hpp:2348

◆ makeLocalPolynomialGrid()

TasmanianSparseGrid TasGrid::makeLocalPolynomialGrid ( NumDimensions dims,
NumOutputs outs,
DepthLevel depth,
BasisOrder order = BasisOrder{1},
TypeOneDRule rule = rule_localp,
LevelLimits const & level_limits = NoLevelLimits{} )
inline

Factory method for Local Polynomial Grid using strong types.

Allows for expressive initializations, e.g.,

);
@ rule_localp
Nested rule with a hierarchy of uniformly distributed nodes and functions with compact support.
Definition tsgEnumerates.hpp:365
BasisOrder
Strong type for the maximum polynomial order of the grid.
Definition TasmanianSparseGrid.hpp:2468
TasmanianSparseGrid makeLocalPolynomialGrid(int dimensions, int outputs, int depth, int order=1, TypeOneDRule rule=rule_localp, std::vector< int > const &level_limits=std::vector< int >())
Factory method, creates a new grid and calls TasmanianSparseGrid::makeLocalPolynomialGrid().
Definition TasmanianSparseGrid.hpp:2362
Strong type for the vector of integers representing the anisotropic weighs.
Definition TasmanianSparseGrid.hpp:2563

◆ makeWaveletGrid()

TasmanianSparseGrid TasGrid::makeWaveletGrid ( NumDimensions dims,
NumOutputs outs,
DepthLevel depth,
BasisOrder order = BasisOrder{1},
LevelLimits const & level_limits = NoLevelLimits{} )
inline

Factory method for Wavelet Grid using strong types.

Allows for expressive initializations, e.g.,

// no level limits
);
TasmanianSparseGrid makeWaveletGrid(int dimensions, int outputs, int depth, int order=1, std::vector< int > const &level_limits=std::vector< int >())
Factory method, creates a new grid and calls TasmanianSparseGrid::makeWaveletGrid().
Definition TasmanianSparseGrid.hpp:2375

◆ makeFourierGrid()

TasmanianSparseGrid TasGrid::makeFourierGrid ( NumDimensions dims,
NumOutputs outs,
DepthLevel depth,
TypeDepth type,
AnsitropicWeights const & anisotropic_weights = IsotropicWeights{},
LevelLimits const & level_limits = NoLevelLimits{} )
inline

Factory method for Wavelet Grid using strong types.

Allows for expressive initializations, e.g.,

// no anisotropic weights
// no level limits
);