xc
ArcLengthBase.h
1 //----------------------------------------------------------------------------
2 // XC program; finite element analysis code
3 // for structural analysis and design.
4 //
5 // Copyright (C) Luis Claudio Pérez Tato
6 //
7 // This program derives from OpenSees <http://opensees.berkeley.edu>
8 // developed by the «Pacific earthquake engineering research center».
9 //
10 // Except for the restrictions that may arise from the copyright
11 // of the original program (see copyright_opensees.txt)
12 // XC is free software: you can redistribute it and/or modify
13 // it under the terms of the GNU General Public License as published by
14 // the Free Software Foundation, either version 3 of the License, or
15 // (at your option) any later version.
16 //
17 // This software is distributed in the hope that it will be useful, but
18 // WITHOUT ANY WARRANTY; without even the implied warranty of
19 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 // GNU General Public License for more details.
21 //
22 //
23 // You should have received a copy of the GNU General Public License
24 // along with this program.
25 // If not, see <http://www.gnu.org/licenses/>.
26 //----------------------------------------------------------------------------
27 //ArcLengthBase.h
28 
29 #ifndef ArcLengthBase_h
30 #define ArcLengthBase_h
31 
32 #include "solution/analysis/integrator/static/ProtoArcLength.h"
33 
34 namespace XC {
35 class LinearSOE;
36 class AnalysisModel;
37 class FE_Element;
38 class Vector;
39 
41 //
44  {
45  protected:
46  double alpha2;
47 
49 
50  double getDLambdaNewStep(void) const;
51  int sendData(CommParameters &);
52  int recvData(const CommParameters &);
53 
54  ArcLengthBase(AnalysisAggregation *,int classTag,double ArcLength, double alpha = 1.0);
55  public:
56 
57  int sendSelf(CommParameters &);
58  int recvSelf(const CommParameters &);
59  };
60 } // end of XC namespace
61 
62 #endif
63 
Solution procedure for the finite element problem.
Definition: AnalysisAggregation.h:89
int recvData(const CommParameters &)
Receives object members through the channel being passed as parameter.
Definition: ArcLengthBase.cc:64
int recvSelf(const CommParameters &)
Receive the object.
Definition: ArcLengthBase.cc:86
double alpha2
squared value of the scaling factor on the reference loads.
Definition: ArcLengthBase.h:46
double getDLambdaNewStep(void) const
Returns the dLambda value for the newStep method.
Definition: ArcLengthBase.cc:45
int sendData(CommParameters &)
Send object members through the channel being passed as parameter.
Definition: ArcLengthBase.cc:56
ArcLengthBase(AnalysisAggregation *, int classTag, double ArcLength, double alpha=1.0)
Constructor.
Definition: ArcLengthBase.cc:41
Base class for the arc-length integrators family.
Definition: ArcLengthBase.h:43
Open source finite element program for structural analysis.
Definition: ContinuaReprComponent.h:34
Communication parameters between processes.
Definition: CommParameters.h:65
int sendSelf(CommParameters &)
Send the object.
Definition: ArcLengthBase.cc:71
Base class for arc length integrators.
Definition: ProtoArcLength.h:44