MCPcopy Create free account
hub / github.com/OpenSees/OpenSees / ShearPanelMaterial

Method ShearPanelMaterial

SRC/material/uniaxial/ShearPanelMaterial.cpp:144–215  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

142
143
144ShearPanelMaterial::ShearPanelMaterial(int tag,
145 double f1p, double d1p, double f2p, double d2p,
146 double f3p, double d3p, double f4p, double d4p,
147 double f1n, double d1n, double f2n, double d2n,
148 double f3n, double d3n, double f4n, double d4n,
149 double mdp, double mfp, double msp,
150 double mdn, double mfn, double msn,
151 double gk1, double gk2, double gk3, double gk4, double gklim,
152 double gd1, double gd2, double gd3, double gd4, double gdlim,
153 double gf1, double gf2, double gf3, double gf4, double gflim, double ge, double ystr):
154 UniaxialMaterial(tag, MAT_TAG_ShearPanelMaterial),
155 stress1p(f1p), strain1p(d1p), stress2p(f2p), strain2p(d2p),
156 stress3p(f3p), strain3p(d3p), stress4p(f4p), strain4p(d4p),
157 stress1n(f1n), strain1n(d1n), stress2n(f2n), strain2n(d2n),
158 stress3n(f3n), strain3n(d3n), stress4n(f4n), strain4n(d4n), yldStress(ystr), yldStrain(0.0),
159 envlpPosStress(6), envlpPosStrain(6), envlpNegStress(6), envlpNegStrain(6), tagMat(tag),
160 gammaK1(gk1), gammaK2(gk2), gammaK3(gk3), gammaK4(gk4), gammaKLimit(gklim),
161 gammaD1(gd1), gammaD2(gd2), gammaD3(gd3), gammaD4(gd4), gammaDLimit(gdlim),
162 gammaF1(gf1), gammaF2(gf2), gammaF3(gf3), gammaF4(gf4), gammaFLimit(gflim),
163 gammaE(ge),
164 rDispP(mdp), rForceP(mfp), uForceP(msp), rDispN(mdn), rForceN(mfn), uForceN(msn),
165 state3Stress(4), state3Strain(4), state4Stress(4), state4Strain(4),
166 envlpPosDamgdStress(6), envlpNegDamgdStress(6)
167{
168 bool error = false;
169
170 // Positive backbone parameters
171 if (strain1p <= 0.0)
172 error = true;
173
174 if (strain2p <= 0.0)
175 error = true;
176
177 if (strain3p <= 0.0)
178 error = true;
179
180 if (strain4p <= 0.0)
181 error = true;
182
183 // Negative backbone parameters
184 if (strain1n >= 0.0)
185 error = true;
186
187 if (strain2n >= 0.0)
188 error = true;
189
190 if (strain3n >= 0.0)
191 error = true;
192
193 if (strain4n >= 0.0)
194 error = true;
195
196 if (error){
197 opserr << "ERROR: -- input backbone is not unique (one-to-one) , ShearPanelMaterial::ShearPanelMaterial" << "\a";
198 }
199
200 envlpPosStress.Zero(); envlpPosStrain.Zero(); envlpNegStress.Zero(); envlpNegStrain.Zero();
201 energyCapacity = 0.0; kunload = 0.0; elasticStrainEnergy = 0.0;

Callers

nothing calls this directly

Calls 5

SetEnvelopeMethod · 0.95
revertToStartMethod · 0.95
revertToLastCommitMethod · 0.95
ZeroMethod · 0.45
setFileMethod · 0.45

Tested by

no test coverage detected