29 gsInfo<<
"Solver "<<k<<
" out of "<<m_solvers.size()<<
"\n";
33 m_solvers[k]->setUpdate(m_solvers[k-1]->update());
36 m_status = m_solvers[k]->solve();
39 m_numIterations += m_solvers[k]->iterations();
40 m_U = m_solvers[k]->solution();
41 m_DeltaU = m_solvers[k]->update();
43 else if (m_verbose > 0)
44 gsInfo<<
"Solver "<<k<<
" failed \n";
52 for (
typename std::vector<
gsStaticBase<T> *>::iterator solver = m_solvers.begin(); solver!=m_solvers.end(); solver++)
53 (*solver)->initialize();
63 m_options.addInt(
"verbose",
"Verbose output",0);
73 m_verbose = m_options.getInt(
"verbose");
79 gsWarn<<
"setOptions cannot be used on a gsStaticComposite solver. Call setOptions on each solver individually\n";
85 for (
typename std::vector<
gsStaticBase<T> *>::iterator solver = m_solvers.begin(); solver!=m_solvers.end(); solver++)
86 (*solver)->setDisplacement(displacement);
92 for (
typename std::vector<
gsStaticBase<T> *>::iterator solver = m_solvers.begin(); solver!=m_solvers.end(); solver++)
93 (*solver)->setLoad(L);
99 for (
typename std::vector<
gsStaticBase<T> *>::iterator solver = m_solvers.begin(); solver!=m_solvers.end(); solver++)
100 (*solver)->setSolution(displacement,L);
106 for (
typename std::vector<
gsStaticBase<T> *>::iterator solver = m_solvers.begin(); solver!=m_solvers.end(); solver++)
107 (*solver)->setUpdate(update);
113 for (
typename std::vector<
gsStaticBase<T> *>::iterator solver = m_solvers.begin(); solver!=m_solvers.end(); solver++)
Class which holds a list of parameters/options, and provides easy access to them.
Definition gsOptionList.h:33
Base class for static solvers.
Definition gsStaticBase.h:38
void setLoad(const T L) override
See gsStaticBase.
Definition gsStaticComposite.hpp:90
void setOptions(gsOptionList &options) override
See gsStaticBase.
Definition gsStaticComposite.hpp:77
void initialize() override
See gsStaticBase.
Definition gsStaticComposite.hpp:50
void defaultOptions() override
See gsStaticBase.
Definition gsStaticComposite.hpp:57
void getOptions() override
See gsStaticBase.
Definition gsStaticComposite.hpp:67
void setDisplacement(const gsVector< T > &displacement) override
See gsStaticBase.
Definition gsStaticComposite.hpp:83
gsStatus solve() override
See gsStaticBase.
Definition gsStaticComposite.hpp:21
void setSolution(const gsVector< T > &displacement, const T L) override
See gsStaticBase.
Definition gsStaticComposite.hpp:97
void setUpdate(const gsVector< T > &update) override
See gsStaticBase.
Definition gsStaticComposite.hpp:104
void reset() override
See gsStaticBase.
Definition gsStaticComposite.hpp:111
A vector with arbitrary coefficient type and fixed or dynamic size.
Definition gsVector.h:37
#define gsWarn
Definition gsDebug.h:50
#define gsInfo
Definition gsDebug.h:43
The G+Smo namespace, containing all definitions for the library.
gsStatus
Definition gsStructuralAnalysisTypes.h:21