xc
|
performs a static analysis on the FE_Model. More...
#include <StaticAnalysis.h>
Public Member Functions | |
~StaticAnalysis (void) | |
Destructor. More... | |
void | clearAll (void) |
Clears all object members. | |
virtual int | analyze (int numSteps) |
Performs the analysis. More... | |
int | initialize (void) |
int | domainChanged (void) |
Method invoked during the analysis to deal with domain changes. More... | |
int | setNumberer (DOF_Numberer &theNumberer) |
Sets the renumerador to use in the analysis. | |
int | setAlgorithm (EquiSolnAlgo &theAlgorithm) |
Sets the solution algorithm to use in the analysis. More... | |
int | setIntegrator (StaticIntegrator &theIntegrator) |
Sets the integrator to use in the analysis. More... | |
int | setLinearSOE (LinearSOE &theSOE) |
Sets the linear system of equations to use in the analysis. More... | |
int | setConvergenceTest (ConvergenceTest &theTest) |
Sets the convergence test to use in the analysis. | |
ConvergenceTest * | getConvergenceTest (void) |
![]() | |
SolutionStrategy * | getSolutionStrategyPtr (void) |
Returns the solution strategy to which this analysis belongs. More... | |
Domain * | getDomainPtr (void) |
Returns a pointer to the domain. | |
const Domain * | getDomainPtr (void) const |
Returns a pointer to the domain. | |
ConstraintHandler * | getConstraintHandlerPtr (void) |
Returns a pointer to the constraint handler. | |
DOF_Numberer * | getDOF_NumbererPtr (void) const |
Returns a pointer to the DOF numberer. | |
AnalysisModel * | getAnalysisModelPtr (void) const |
Returns a pointer to the analysis model. | |
LinearSOE * | getLinearSOEPtr (void) const |
Returns a pointer to the linear system of equations. | |
EigenSOE * | getEigenSOEPtr (void) const |
Returns a pointer to the system of equations de eigenvalues. | |
Integrator * | getIntegratorPtr (void) |
Returns, if possible, a pointer al integrator otherwise it returns nullptr. | |
const Integrator * | getIntegratorPtr (void) const |
Returns, if possible, a pointer al integrator otherwise it returns nullptr. | |
IncrementalIntegrator * | getIncrementalIntegratorPtr (void) |
Returns, if possible, a pointer al integrator incremental otherwise it returns nullptr. | |
EigenIntegrator * | getEigenIntegratorPtr (void) |
Returns, if possible, a pointer al EigenIntegrator otherwise it returns nullptr. | |
LinearBucklingIntegrator * | getLinearBucklingIntegratorPtr (void) |
Returns, if possible, a pointer al LinearBucklingIntegrator otherwise it returns nullptr. | |
TransientIntegrator * | getTransientIntegratorPtr (void) |
Returns, if possible, a pointer al EigenIntegrator otherwise it returns nullptr. | |
StaticIntegrator * | getStaticIntegratorPtr (void) |
Returns, if possible, a pointer al StaticIntegrator otherwise it returns nullptr. | |
SolutionAlgorithm * | getSolutionAlgorithmPtr (void) |
EigenAlgorithm * | getEigenSolutionAlgorithmPtr (void) |
Return a pointer to the eigenproblem solution algorithm (if it's not defined it returns nullptr). More... | |
EquiSolnAlgo * | getEquiSolutionAlgorithmPtr (void) |
Return a pointer to the linear SOE solution algorithm (if it's not defined it returns nullptr). More... | |
DomainDecompAlgo * | getDomainDecompSolutionAlgorithmPtr (void) |
Return a pointer to the domain decomposition solution algorithm (if it's not defined it returns nullptr). More... | |
virtual ConvergenceTest * | getConvergenceTestPtr (void) |
Returns a pointer to the convergence test (only for suitable analysis). | |
virtual const ConvergenceTest * | getConvergenceTestPtr (void) const |
Returns a pointer to the convergence test (only for suitable analysis). | |
virtual const DomainSolver * | getDomainSolver (void) const |
Returns a pointer to the DomainSolver. | |
virtual DomainSolver * | getDomainSolver (void) |
Returns a pointer to the DomainSolver. | |
virtual const Subdomain * | getSubdomain (void) const |
Returns a pointer to the subdomain. | |
virtual Subdomain * | getSubdomain (void) |
Returns a pointer to the subdomain. | |
virtual int | setEigenSOE (EigenSOE &theSOE) |
Sets the system of eigenvalues to use in the analysis. | |
virtual int | setIntegrator (Integrator &theNewIntegrator) |
Sets the integrator to use in the analysis. | |
virtual int | setAlgorithm (SolutionAlgorithm &theNewAlgorithm) |
Set the solution algorithm to be used in the analysis. | |
void | brokeConstraintHandler (const Communicator &, const ID &) |
void | brokeNumberer (const Communicator &, const ID &) |
void | brokeAnalysisModel (const Communicator &, const ID &) |
void | brokeDDLinearSOE (const Communicator &, const ID &) |
void | brokeLinearSOE (const Communicator &, const ID &) |
void | brokeIncrementalIntegrator (const Communicator &, const ID &) |
void | brokeStaticIntegrator (const Communicator &, const ID &) |
void | brokeTransientIntegrator (const Communicator &, const ID &) |
void | brokeDomainDecompAlgo (const Communicator &, const ID &) |
void | brokeEquiSolnAlgo (const Communicator &, const ID &) |
int | getAnalysisResult (void) const |
![]() | |
CommandEntity (CommandEntity *owr=nullptr) | |
Default constructor. | |
CommandEntity * | Owner (void) |
Return a pointer to the object owner. | |
const CommandEntity * | Owner (void) const |
Return un puntero al objeto propietario de ESTE. | |
const StandardOutputWrapper & | getStandardOutputWrapper (void) const |
Return the regular output stream wrapper. | |
StandardOutputWrapper & | getStandardOutputWrapper (void) |
Return the regular output stream wrapper. | |
const std::string & | getLogFileName (void) const |
Returns log file name. | |
void | setLogFileName (const std::string &) |
Sets log file name. | |
const std::string & | getErrFileName (void) const |
Returns err file name. | |
void | setErrFileName (const std::string &) |
Sets error file name. | |
const std::string & | getOutputFileName (void) const |
Returns regular output file name. | |
void | setOutputFileName (const std::string &) |
Sets regular output file name. | |
boost::python::object | evalPy (boost::python::object dict, const std::string &) |
Return the Python object that results from evaluating the argument. | |
boost::python::object | execPy (boost::python::object dict, const std::string &) |
Return the Python objects that results from executing the code in the string argument. | |
boost::python::object | execFilePy (boost::python::object dict, const std::string &) |
Return the Python object that results from executing the code in the file. | |
![]() | |
EntityWithProperties (EntityWithProperties *owr=nullptr) | |
Default constructor. | |
void | clearPyProps (void) |
Clear python properties map. | |
bool | hasPyProp (const std::string &) |
Returns true if property exists. | |
boost::python::object | getPyProp (const std::string &str) |
Return the Python object with the name being passed as parameter. | |
void | setPyProp (std::string str, boost::python::object val) |
Sets/appends a value tho the Python object's dictionary. | |
void | copyPropsFrom (const EntityWithProperties &) |
Copy the properties from the argument. | |
boost::python::list | getPropNames (void) const |
Return the names of the object properties weightings. | |
const PythonDict & | getPropertiesDict (void) const |
Return a std::map container with the properties of the object. | |
boost::python::dict | getPyDict (void) const |
Return a Python dictionary containing the object members values. | |
void | setPyDict (const boost::python::dict &) |
Set the values of the object members from a Python dictionary. | |
![]() | |
EntityWithOwner (EntityWithOwner *owr=nullptr) | |
Default constructor. | |
EntityWithOwner (const EntityWithOwner &) | |
Copy constructor. | |
EntityWithOwner & | operator= (const EntityWithOwner &) |
Assignment operator. | |
virtual bool | operator== (const EntityWithOwner &) const |
Comparison operator. | |
virtual | ~EntityWithOwner (void) |
Virtual destructor. | |
virtual std::string | getClassName (void) const |
Returns demangled class name. | |
void | set_owner (EntityWithOwner *owr) |
Assigns the owner of the object. | |
EntityWithOwner * | Owner (void) |
const EntityWithOwner * | Owner (void) const |
Protected Member Functions | |
int | new_domain_step (int num_step) |
Ask the domain to performa a new analysis step. | |
int | check_domain_change (int num_step, int numSteps) |
Check if the domain has changed after the last analysis step. More... | |
int | new_integrator_step (int num_step) |
Ask the integrator to perform a new step in the analysis. | |
int | solve_current_step (int num_step) |
Solves for current step. | |
int | compute_sensitivities_step (int num_step) |
Computes sensitivities for the current analysis step. | |
int | commit_step (int num_step) |
Consuma el estado al final del paso. | |
int | run_analysis_step (int num_step, int numSteps) |
Performs un paso of the analysis. | |
StaticAnalysis (SolutionStrategy *analysis_aggregation) | |
Constructor. | |
Analysis * | getCopy (void) const |
Virtual constructor. | |
![]() | |
int | newStepDomain (AnalysisModel *theModel, const double &dT=0.0) |
SolutionProcedure * | getSolutionProcedure (void) |
const SolutionProcedure * | getSolutionProcedure (void) const |
Analysis (SolutionStrategy *analysis_aggregation) | |
Constructor. More... | |
![]() | |
template<class T > | |
void | string_to (T &, const std::string &) const |
![]() | |
bool | isEqual (const EntityWithProperties &) const |
Return true if both objects are equal. | |
![]() | |
virtual bool | isEqual (const EntityWithOwner &) const |
Return true if both objects are equal. | |
Protected Attributes | |
int | domainStamp |
![]() | |
int | analysis_result |
Equal to zero if success. | |
SolutionStrategy * | solution_strategy |
Solution strategy. | |
Friends | |
class | SolutionProcedure |
Additional Inherited Members | |
![]() | |
typedef std::map< std::string, boost::python::object > | PythonDict |
![]() | |
static void | resetStandardOutput (void) |
Reset the standard output streams to its defaults buffers. | |
![]() | |
static int | getVerbosityLevel (void) |
Get the value of the verbosity level. | |
static void | setVerbosityLevel (const int &) |
Set the value of the verbosity level. | |
![]() | |
static CommandEntity * | entcmd_cast (boost::any &data) |
![]() | |
static int | verbosity = 1 |
Object that owns THIS ONE. More... | |
performs a static analysis on the FE_Model.
XC::StaticAnalysis::~StaticAnalysis | ( | void | ) |
Destructor.
Does nothing. clearAll() must be invoked if the destructor on the objects in the aggregation need to be invoked.
|
virtual |
Performs the analysis.
Invoked to perform a static analysis on the FE_Model. The analysis The type of analysis performed, depends on the type of the objects in the analysis aggregation. If any of the methods invoked returns a negative number, an error message is printed, {revertToLastCommit()} is invoked on the Domain, and a negative number is immediately returned. Returns a \(0\) if the algorithm is successful.
numSteps | number of steps in the analysis (for static analysis, if the loads are constant it's useless to increase the number of steps so numSteps= 1) |
Reimplemented in XC::LinearBucklingAnalysis.
|
protected |
Check if the domain has changed after the last analysis step.
It's used in run_analysis_step method.
|
virtual |
Method invoked during the analysis to deal with domain changes.
This is a method invoked by the analysis during the analysis method if the Domain has changed. The method invokes the following:
the
analysis model which causes the AnalysisModel to clear out its list of FE_Elements and DOF_Groups, and clearAll() on the
constraint handler.theHandler
. This causes the constraint handler to recreate the appropriate FE_Element and DOF_Groups to perform the analysis subject to the boundary conditions in the modified domain.theNumberer
. This causes the DOF numberer to assign equation numbers to the individual dof's. Once the equation numbers have been set the numberer then invokes setID() on all the FE_Elements in the model. Finally the numberer invokes setNumEqn() on the model.theIntegrator
and theAlgorithm
. Returns \(0\) if successful. At any stage above, if an error occurs the method is stopped, a warning message is printed and a negative number is returned. Implements XC::Analysis.
int XC::StaticAnalysis::setAlgorithm | ( | EquiSolnAlgo & | theNewAlgorithm | ) |
Sets the solution algorithm to use in the analysis.
Change the solution algorithm to use and then causes domainChanged() to be invoked by setting domainStamp= 0. Returns \(0\) if successful, a warning message and a negative number if not.
int XC::StaticAnalysis::setIntegrator | ( | StaticIntegrator & | theNewIntegrator | ) |
Sets the integrator to use in the analysis.
Change the integrator to use and then causes domainChanged() to be invoked by setting domainStamp= 0. Returns \(0\) if successful, a warning message and a negative number if not.
|
virtual |
Sets the linear system of equations to use in the analysis.
Change the linear system of equations to use and then causes domainChanged() to be invoked by setting domainStamp= 0. Returns \(0\) if successful, a warning message and a negative number if not.
Reimplemented from XC::Analysis.