![]() |
GemaCoreLib
The GeMA Core library
|
1D Gauss Integration rules (for bar elements) More...
#include <gmBarIntegrationRule.h>
Public Member Functions | |
GmLineGaussIntegrationRule (int rule) | |
Basic constructor for a Line integration rule using Gauss rules. Rule from 1 to 5. Creates an invalid object for rules outside the valid range. See comments on GmIntegrationRule::isValid() | |
GmLineGaussIntegrationRule (GmIntegrationRuleType irType, int rule1, int rule2, int rule3) | |
Standard constructor to enable the class use with GmCellIntegrationRuleSet. | |
![]() | |
bool | isValid () const |
Returns true if this is a valid integration rule object, false if not. More... | |
virtual int | numPoints () const |
Returns the number of integration points returned by this rule. | |
virtual void | integrationPoint (int index, GmVector &naturalCoord, double *weight) const |
Given an index from 0 to numPoints() - 1, fills naturalCoord and weight with the position and weigth of the given integration point. More... | |
virtual int | numNaturalCoord () const |
Returns the number of natural coordinates used by this integration rule. | |
virtual int | degree () const |
Returns the integration degree for this rule (The polynomial degree for which this rule is exact) | |
virtual GmIntegrationRuleType | ruleType () const |
Returns the type of the integration rule. | |
virtual QString | ruleName () const |
Returns the current ruleName adopted by this integration rule. | |
virtual int | rulePar (int num) const |
Returns the value of the numbered rule parameter received in the rule constructor (-1 if unused). Num should be a value between 1 and 3. | |
virtual int | ruleParNumPoints (int num) const |
virtual int | cacheKey () const |
Returns an unique integer that can be used to uniquelly represent this kind of integration rule (i.e, two objects with the same cache key should return exactly the same set of integration points). More... | |
![]() | |
virtual | ~GmIntegrationRule () |
Virtual destructor. | |
virtual const QVector< int > & | closestIntegrationIndex (GmCellType type, int P, int Q, int nodeIndex) const |
Returns a list with the index of the closest(s) integraion points from nodeIndex. More... | |
Additional Inherited Members | |
![]() | |
static GmIntegrationRule * | instance (GmCellType type, int P, int Q, GmIntegrationRuleType irType, int rule1=-1, int rule2=-1, int rule3=-1) |
Instanciates an integration rule for the specified element type using the provided parameters. Returns NULL if the parameter set results in an invalid integration rule. More... | |
![]() | |
GmLinearMultiTableIntegrationRule (GmIntegrationRuleType ruleType, GmIntegrationRuleCacheKeyBase cacheKeyBase, int rule1, const QVector< QPair< double, double >> *table1, int degree1, int rule2=-1, const QVector< QPair< double, double >> *table2=NULL, int degree2=0, int rule3=-1, const QVector< QPair< double, double >> *table3=NULL, int degree3=0) | |
Constructor. Receives the rule type + cache key base, along with the set of rule numbers + the table defining the integration rule in that dimension. More... | |
![]() | |
int | makeCacheKey (GmIntegrationRuleCacheKeyBase base, bool closed, int rule1, int rule2=-1, int rule3=-1) const |
Creates an unique cache key based on the rule type cache key and the rule parameters. | |
QString | makeRuleName (GmIntegrationRuleType irType, int rule1, int rule2=-1, int rule3=-1) const |
Returns a standard rule name based on rule type and rule parameters. | |
![]() | |
GmIntegrationRuleType | _rtype |
The rule type. | |
int | _degree |
The combined rule degree (the minimum of the individual rule degrees) | |
int | _nip |
The number of integration points. | |
int | _rules [3] |
The rule numbers. -1 if unused. If a rule is -1, all following rules are also -1. | |
const QVector< QPair< double, double > > * | _tables [3] |
Tables with point & weight data for the given rule. NULL if unused. If a table is NULL, all following tables are NULL. | |
GmIntegrationRuleCacheKeyBase | _keyBase |
The base cache key. | |
1D Gauss Integration rules (for bar elements)