#include <SymLogMesh.hpp>

Public Member Functions | |
| double | centralBinFraction () const |
| Array | mesh () const override |
Public Member Functions inherited from Mesh | |
| virtual Array | mesh () const =0 |
| int | numBins () const |
Public Member Functions inherited from SimulationItem | |
| template<class T > | |
| T * | find (bool setup=true) const |
| template<class T > | |
| T * | interface (int levels=-999999, bool setup=true) const |
| virtual string | itemName () const |
| void | setup () |
| string | typeAndName () const |
Public Member Functions inherited from Item | |
| Item (const Item &)=delete | |
| virtual | ~Item () |
| void | addChild (Item *child) |
| const vector< Item * > & | children () const |
| virtual void | clearItemListProperty (const PropertyDef *property) |
| void | destroyChild (Item *child) |
| virtual bool | getBoolProperty (const PropertyDef *property) const |
| virtual vector< double > | getDoubleListProperty (const PropertyDef *property) const |
| virtual double | getDoubleProperty (const PropertyDef *property) const |
| virtual string | getEnumProperty (const PropertyDef *property) const |
| virtual int | getIntProperty (const PropertyDef *property) const |
| virtual vector< Item * > | getItemListProperty (const PropertyDef *property) const |
| virtual Item * | getItemProperty (const PropertyDef *property) const |
| virtual string | getStringProperty (const PropertyDef *property) const |
| int | getUtilityProperty (string name) const |
| virtual void | insertIntoItemListProperty (const PropertyDef *property, int index, Item *item) |
| Item & | operator= (const Item &)=delete |
| Item * | parent () const |
| virtual void | removeFromItemListProperty (const PropertyDef *property, int index) |
| virtual void | setBoolProperty (const PropertyDef *property, bool value) |
| virtual void | setDoubleListProperty (const PropertyDef *property, vector< double > value) |
| virtual void | setDoubleProperty (const PropertyDef *property, double value) |
| virtual void | setEnumProperty (const PropertyDef *property, string value) |
| virtual void | setIntProperty (const PropertyDef *property, int value) |
| virtual void | setItemProperty (const PropertyDef *property, Item *item) |
| virtual void | setStringProperty (const PropertyDef *property, string value) |
| void | setUtilityProperty (string name, int value) |
| virtual string | type () const |
Protected Member Functions | |
| SymLogMesh () | |
Protected Member Functions inherited from Mesh | |
| Mesh () | |
| void | setNumBins (int value) |
Protected Member Functions inherited from SimulationItem | |
| SimulationItem () | |
| virtual bool | offersInterface (const std::type_info &interfaceTypeInfo) const |
| virtual void | setupSelfAfter () |
| virtual void | setupSelfBefore () |
Protected Member Functions inherited from Item | |
| Item () | |
Private Types | |
| using | BaseType = Mesh |
| using | ItemType = SymLogMesh |
Private Attributes | |
| double | _centralBinFraction |
Friends | |
| class | ItemRegistry |
The SymLogMesh class represents a symmetric, centrally-anchored, logarithmic mesh. The mesh is actually composed of two centrally-anchored logarithmic meshes mirrored around the central point. The user-configurable parameter \(t_\text{c}\) specifies the width of the central bin(s), and the remaining bins are distributed logarithmically over the intervals left and right of the central bin(s).
If the total number of bins is odd, the single central bin covers the interval \([0.5-t_\text{c}/2, 0.5+t_\text{c}/2]\). If the number of bins is even, there are two central bins respectively covering the intervals \([0.5-t_\text{c}/2, 0.5]\) and \([0.5, 0.5+t_\text{c}/2]\). The remaining bins are distributed symmetrically over the intervals \([0, 0.5-t_\text{c}/2]\) and \([0.5+t_\text{c}/2, 1]\), left and right of the central bin(s), using logarithmic spacing, with the smaller bins near the center.
If the mesh has only one bin, the value of \(t_\text{c}\) is ignored and the single bin spans the complete interval \([0,1]\). Similarly, if the mesh has only two bins, they respectively cover \([0,0.5]\) and \([0.5,1]\).
|
inlineprotected |
Default constructor for concrete Item subclass SymLogMesh : "a symmetric logarithmic mesh" .
|
inline |
This function returns the value of the discoverable double property centralBinFraction : "the central bin width fraction" .
The minimum value for this property is "]0" .
The maximum value for this property is "1[" .
The default value for this property is given by the conditional value expression "1e-3" .
|
overridevirtual |
This function returns an array containing the mesh points.
Implements Mesh.