Hi everyone,
I want to model the shear links in an Eccentric Braced Frame Structural System. My problem is selecting the best element object in opensees/openseespy which can replicate the hysteretic behavior of its as the experimental test results show.
I have found some papers:
1) 2018.05.22 - Experimental and numerical assessment of EBF structures with shear links (Silvia Caprili et al)
2) 2016.06.02 - Seismic Behavior of Direct Displacement-based Designed Eccentrically Braced Frames (Mohebkhah et al)
I think the 1st one is more easier to model. Has anybody have any idea whether there are other object elements more straight forward to use instead?
I also need an example of how to use that suggested approach if available (and also for any of the above mentioned models).
Thanks,
Husayn
Search found 6 matches
- Mon Oct 02, 2023 2:05 am
- Forum: OpenSeesPy
- Topic: Modeling the Shear Link in EBFs
- Replies: 0
- Views: 78000
- Mon Sep 04, 2023 6:30 am
- Forum: OpenSeesPy
- Topic: Rotational Spring (with 84000 kip-in. stiffness for example)
- Replies: 1
- Views: 6190
Rotational Spring (with 84000 kip-in. stiffness for example)
Hello everyone,
I have problems with understanding the modeling of a rotational spring. As far as I know, the dimension for the stiffness of a rotational spring is FL (i.e. moment/rotation_angle; kip-in./rad).
How can we model a rotational spring using a zeroLength element and a uniaxial material by giving only the elastic modulus (elastic material for example), whereas, for modelling a rotational spring with 84000 kip-in/rad stiffness, we have to give it a length and a moment of inertia to be able to calculate EI/L whose dimenion is FL (not only E whose dimension is FL^-2).
Is there something missing in my understanding of this matter? Or maybe opensees assumes that I=1 and L=1, and if I set E=84000 ksi, the stiffness of the zeroLength element would be actually k_rot=84000 kip-in./rad! Am I correct about it?
Could somebody enlighten me please?
I have problems with understanding the modeling of a rotational spring. As far as I know, the dimension for the stiffness of a rotational spring is FL (i.e. moment/rotation_angle; kip-in./rad).
How can we model a rotational spring using a zeroLength element and a uniaxial material by giving only the elastic modulus (elastic material for example), whereas, for modelling a rotational spring with 84000 kip-in/rad stiffness, we have to give it a length and a moment of inertia to be able to calculate EI/L whose dimenion is FL (not only E whose dimension is FL^-2).
Is there something missing in my understanding of this matter? Or maybe opensees assumes that I=1 and L=1, and if I set E=84000 ksi, the stiffness of the zeroLength element would be actually k_rot=84000 kip-in./rad! Am I correct about it?
Could somebody enlighten me please?
- Fri Sep 01, 2023 1:38 am
- Forum: OpenSeesPy
- Topic: What is the openseespy error message 'R is negative in ReinforcingSteel::SetMP()' about?
- Replies: 3
- Views: 4662
Re: What is the openseespy error message 'R is negative in ReinforcingSteel::SetMP()' about?
Thank you for your answer. Steel02 is much more stable than this, but in the literature I have seen a lot of people who have used ReinforcingSteel material model and none of them have convergence issues like me. I have changed the typeEle from forceBeamColumn to dispBeamColumn in my code and I had a very good effect; but yet in bigger target displacements I face that error. I want to know the meaning of that error (What does it say?).
- Thu Aug 31, 2023 1:31 pm
- Forum: OpenSeesPy
- Topic: What is the openseespy error message 'R is negative in ReinforcingSteel::SetMP()' about?
- Replies: 3
- Views: 4662
What is the openseespy error message 'R is negative in ReinforcingSteel::SetMP()' about?
Hello everyone,
I have written the code github repository link is available below:
https://github.com/husayn-mohammadi/01_cantilever
when I run the code for a cyclic pushover analysis, I get the message 'R is negative in ReinforcingSteel::SetMP()' and subsequently the analysis explodes. It doesn't result in a logical plot of hysteretic response.
Can anyone test my code and try to figure out what is wrong with it?
Thank you in advance for helping me.
Husayn,
-----------------------------------------------------------------------------
husayn@aut.ac.ir
I have written the code github repository link is available below:
https://github.com/husayn-mohammadi/01_cantilever
when I run the code for a cyclic pushover analysis, I get the message 'R is negative in ReinforcingSteel::SetMP()' and subsequently the analysis explodes. It doesn't result in a logical plot of hysteretic response.
Can anyone test my code and try to figure out what is wrong with it?
Thank you in advance for helping me.
Husayn,
-----------------------------------------------------------------------------
husayn@aut.ac.ir
- Wed Aug 30, 2023 11:36 pm
- Forum: OpenSeesPy
- Topic: Error in 'ReinforcingSteel' material model command
- Replies: 1
- Views: 3607
Re: Error in 'ReinforcingSteel' material model command
No need to wory guys. I fixed it up. The following code worked out just well.
ops.uniaxialMaterial(*['ReinforcingSteel', 1,
Fy, Fu, Es, Esh, eps_sh, eps_ult,
'-GABuck', lsr, beta, r, gamma,
'-CMFatigue', Cf, alpha, Cd,
'-IsoHard', a1, limit,
'-MPCurveParams', R1, R2, R3
])
ops.uniaxialMaterial(*['ReinforcingSteel', 1,
Fy, Fu, Es, Esh, eps_sh, eps_ult,
'-GABuck', lsr, beta, r, gamma,
'-CMFatigue', Cf, alpha, Cd,
'-IsoHard', a1, limit,
'-MPCurveParams', R1, R2, R3
])
- Wed Aug 30, 2023 10:17 am
- Forum: OpenSeesPy
- Topic: Error in 'ReinforcingSteel' material model command
- Replies: 1
- Views: 3607
Error in 'ReinforcingSteel' material model command
Hi everyone,
I have defined a function to create steel material models and I run into "OpenSeesError: See stderr output" error in the 1st version of my code, while in the 2nd one the analysis runs successfully. In the 1st version I give it my customized values for the parameters of "ReinforcingSteel" and in the 2nd version I have omitted the optional parameters from the command. I wonder why the 2nd one works out fine but the 1st one doesn't. Can anyone tell me where I have made a mistake?
##########################################################################################################################
1st:
import openseespy.opensees as ops
b = 0.15
Es = 29000
Fy = 50
Esh = Es/30
Fu = 65
epsy = Fy/Es
eps_sh = 10 * epsy
eps_ult = 0.15
lsr = 0
beta = 2.0
r = 0.0
gamma = 0.5
alpha = 0.506
Cf = 0.26
Cd = 0.389
a1 = 4.3
limit = 1.0
R1 = 0.333
R2 = 18.0
R3 = 4.0
ops.uniaxialMaterial('ReinforcingSteel', 1, Fy, Fu, Es, Esh, eps_sh, eps_ult, '-GABuck', lsr, beta, r, gamma, '-CMFatigue', Cf, alpha, Cd, '-IsoHard', a1, limit,'-MPCurveParams', R1, R2, R3)
##########################################################################################################################
2nd:
.
.
.
ops.uniaxialMaterial('ReinforcingSteel', 1, Fy, Fu, Es, Esh, eps_sh, eps_ult)
I have defined a function to create steel material models and I run into "OpenSeesError: See stderr output" error in the 1st version of my code, while in the 2nd one the analysis runs successfully. In the 1st version I give it my customized values for the parameters of "ReinforcingSteel" and in the 2nd version I have omitted the optional parameters from the command. I wonder why the 2nd one works out fine but the 1st one doesn't. Can anyone tell me where I have made a mistake?
##########################################################################################################################
1st:
import openseespy.opensees as ops
b = 0.15
Es = 29000
Fy = 50
Esh = Es/30
Fu = 65
epsy = Fy/Es
eps_sh = 10 * epsy
eps_ult = 0.15
lsr = 0
beta = 2.0
r = 0.0
gamma = 0.5
alpha = 0.506
Cf = 0.26
Cd = 0.389
a1 = 4.3
limit = 1.0
R1 = 0.333
R2 = 18.0
R3 = 4.0
ops.uniaxialMaterial('ReinforcingSteel', 1, Fy, Fu, Es, Esh, eps_sh, eps_ult, '-GABuck', lsr, beta, r, gamma, '-CMFatigue', Cf, alpha, Cd, '-IsoHard', a1, limit,'-MPCurveParams', R1, R2, R3)
##########################################################################################################################
2nd:
.
.
.
ops.uniaxialMaterial('ReinforcingSteel', 1, Fy, Fu, Es, Esh, eps_sh, eps_ult)