Moment Curvature Analysis
Moderators: silvia, selimgunay, Moderators
Moment Curvature Analysis
Hi
I am doing moment curvature analysis of RC column section in OpenSees by using the script given in the example. The problem I am encountering is that the moment curvature curve is very erratic. That is it reaches its maximum point (Ultimate moment that is matching my manual calculations), then drops and then rises again and does not drop then. What I want to know is that why it rises again?
I am doing moment curvature analysis of RC column section in OpenSees by using the script given in the example. The problem I am encountering is that the moment curvature curve is very erratic. That is it reaches its maximum point (Ultimate moment that is matching my manual calculations), then drops and then rises again and does not drop then. What I want to know is that why it rises again?
Re: Moment Curvature Analysis
look at the steel properties.
-
- Posts: 58
- Joined: Tue Dec 13, 2016 7:14 am
- Location: University of Tlemcen-Algeria
Moment Curvature Analysis
Hello everybody,
I did a moment curvature analysis of RC column for a rectangular section (found in the site).
The results obtained by different methods are as follows:
with:
- OpenSees: phi(y)=0.0001269
- SAP2000: phi(y)=0.000223
-KSU_RC : phi(y)=0.0008363
- How be can justify the difference between above methods???
Add, I traing the moment curvature for a circular section but a could not execute it since i did not find a command for the creation the reinforcing fibers.
Please help me !!!
proc MomentCurvature {secTag axialLoad maxK {numIncr 100} } {
# Define two nodes at (0,0)
node 1 0.0 0.0
node 2 0.0 0.0
# Fix all degrees of freedom except axial and bending
fix 1 1 1 1
fix 2 0 1 0
# Define element
# tag ndI ndJ secTag
element zeroLengthSection 1 1 2 $secTag
# Create recorder
recorder Node -file section$secTag.out -time -node 2 -dof 3 disp
# Define constant axial load
pattern Plain 1 "Constant" {
load 2 $axialLoad 0.0 0.0
}
# Define analysis parameters
integrator LoadControl 0.0
system SparseGeneral -piv; # Overkill, but may need the pivoting!
test NormUnbalance 1.0e-9 10
numberer Plain
constraints Plain
algorithm Newton
analysis Static
# Do one analysis for constant axial load
analyze 1
# Define reference moment
pattern Plain 2 "Linear" {
load 2 0.0 0.0 1.0
}
# Compute curvature increment
set dK [expr $maxK/$numIncr]
# Use displacement control at node 2 for section analysis
integrator DisplacementControl 2 3 $dK 1 $dK $dK
# Do the section analysis
analyze $numIncr
}
# Define model builder
# --------------------
model basic -ndm 2 -ndf 3
# Define materials for nonlinear columns
# ------------------------------------------
# CONCRETE tag f'c ec0 f'cu ecu
# Core concrete (confined)
uniaxialMaterial Concrete01 1 -6.0 -0.004 -5.0 -0.014
# Cover concrete (unconfined)
uniaxialMaterial Concrete01 2 -5.0 -0.002 0.0 -0.006
# STEEL
# Reinforcing steel
set fy 60.0; # Yield stress
set E 30000.0; # Young's modulus
# tag fy E0 b
uniaxialMaterial Steel01 3 $fy $E 0.01
# Define cross-section for nonlinear circular section columns
# -----------------------------------------------------------
set cover 1.5
set Dconc 36
section Fiber 1 {
# patch circ $matTag $numSubdivCirc $numSubdivRad $yCenter $zCenter $intRad $extRad <$startAng $endAng>
patch circ 1 12 8 0.0 0.0 0.0 50.0 0.0 360.0
}
# Create the reinforcing fibers
#???????
# Estimate yield curvature
# (Assuming no axial load and only top and bottom steel)
set d [expr $Dconc-$cover] ;# d -- from cover to rebar
set epsy [expr $fy/$E] ;# steel yield strain
set Ky [expr $epsy/(0.7*$d)]
# Print estimate to standard output
puts "Estimated yield curvature: $Ky"
# Set axial load
set P -22.5
set mu 15; # Target ductility for analysis
set numIncr 100; # Number of analysis increments
# Call the section analysis procedure
MomentCurvature 1 $P [expr $Ky*$mu] $numIncr
wipe
I did a moment curvature analysis of RC column for a rectangular section (found in the site).
The results obtained by different methods are as follows:
with:
- OpenSees: phi(y)=0.0001269
- SAP2000: phi(y)=0.000223
-KSU_RC : phi(y)=0.0008363
- How be can justify the difference between above methods???
Add, I traing the moment curvature for a circular section but a could not execute it since i did not find a command for the creation the reinforcing fibers.
Please help me !!!
proc MomentCurvature {secTag axialLoad maxK {numIncr 100} } {
# Define two nodes at (0,0)
node 1 0.0 0.0
node 2 0.0 0.0
# Fix all degrees of freedom except axial and bending
fix 1 1 1 1
fix 2 0 1 0
# Define element
# tag ndI ndJ secTag
element zeroLengthSection 1 1 2 $secTag
# Create recorder
recorder Node -file section$secTag.out -time -node 2 -dof 3 disp
# Define constant axial load
pattern Plain 1 "Constant" {
load 2 $axialLoad 0.0 0.0
}
# Define analysis parameters
integrator LoadControl 0.0
system SparseGeneral -piv; # Overkill, but may need the pivoting!
test NormUnbalance 1.0e-9 10
numberer Plain
constraints Plain
algorithm Newton
analysis Static
# Do one analysis for constant axial load
analyze 1
# Define reference moment
pattern Plain 2 "Linear" {
load 2 0.0 0.0 1.0
}
# Compute curvature increment
set dK [expr $maxK/$numIncr]
# Use displacement control at node 2 for section analysis
integrator DisplacementControl 2 3 $dK 1 $dK $dK
# Do the section analysis
analyze $numIncr
}
# Define model builder
# --------------------
model basic -ndm 2 -ndf 3
# Define materials for nonlinear columns
# ------------------------------------------
# CONCRETE tag f'c ec0 f'cu ecu
# Core concrete (confined)
uniaxialMaterial Concrete01 1 -6.0 -0.004 -5.0 -0.014
# Cover concrete (unconfined)
uniaxialMaterial Concrete01 2 -5.0 -0.002 0.0 -0.006
# STEEL
# Reinforcing steel
set fy 60.0; # Yield stress
set E 30000.0; # Young's modulus
# tag fy E0 b
uniaxialMaterial Steel01 3 $fy $E 0.01
# Define cross-section for nonlinear circular section columns
# -----------------------------------------------------------
set cover 1.5
set Dconc 36
section Fiber 1 {
# patch circ $matTag $numSubdivCirc $numSubdivRad $yCenter $zCenter $intRad $extRad <$startAng $endAng>
patch circ 1 12 8 0.0 0.0 0.0 50.0 0.0 360.0
}
# Create the reinforcing fibers
#???????
# Estimate yield curvature
# (Assuming no axial load and only top and bottom steel)
set d [expr $Dconc-$cover] ;# d -- from cover to rebar
set epsy [expr $fy/$E] ;# steel yield strain
set Ky [expr $epsy/(0.7*$d)]
# Print estimate to standard output
puts "Estimated yield curvature: $Ky"
# Set axial load
set P -22.5
set mu 15; # Target ductility for analysis
set numIncr 100; # Number of analysis increments
# Call the section analysis procedure
MomentCurvature 1 $P [expr $Ky*$mu] $numIncr
wipe
-
- Posts: 3
- Joined: Wed Apr 20, 2016 2:53 am
- Location: National Technical University of Athens
Re: Moment Curvature Analysis
The reinforcement fibers are created with the command layer circ (for circular sections):
http://opensees.berkeley.edu/wiki/index ... er_Command
http://opensees.berkeley.edu/wiki/index ... er_Command
-
- Posts: 58
- Joined: Tue Dec 13, 2016 7:14 am
- Location: University of Tlemcen-Algeria
Re: Moment Curvature Analysis
Tank you very much
-
- Posts: 58
- Joined: Tue Dec 13, 2016 7:14 am
- Location: University of Tlemcen-Algeria
Re: Moment Curvature Analysis
I would be very grateful if you could answer. For a rectangular section, the results of moment-curvature obtained by SAP2000 and OpenSees are as follows (example find in web site):
OpenSees: phi(y)=0,0001269
SAP2000: phi(y)=0,000223
How we can justify the difference beteween these two methods.
Thank you very much.
OpenSees: phi(y)=0,0001269
SAP2000: phi(y)=0,000223
How we can justify the difference beteween these two methods.
Thank you very much.
Re: Moment Curvature Analysis
if they are doing the same thing .. then one of your input files is off.
-
- Posts: 58
- Joined: Tue Dec 13, 2016 7:14 am
- Location: University of Tlemcen-Algeria
Re: Moment Curvature Analysis
Thank you very much Sir
-
- Posts: 1
- Joined: Sun Feb 21, 2016 3:59 am
- Location: SUT
Re: Moment Curvature Analysis
Dear every one
hi
I wanted to model a rectangular steel model with theis specification:
B:300(mm) and H:450 (mm) and Fy=400(Mpa)
I modeled the section in matlab and the plastic moment is about 6000Kn.m
but using opensees give me lots of error
I would really appreciate it if anyone help me
The code:
# --------------------------------------------------------------------------------------------------
# build a section
# Silvia Mazzoni & Frank McKenna, 2006
#
# SET UP ----------------------------------------------------------------------------
wipe; # clear memory of all past model definitions
model BasicBuilder -ndm 2 -ndf 3; # Define the model builder, ndm=#dimension, ndf=#dofs
set dataDir Data; # set up name of data directory -- simple
file mkdir $dataDir; # create data directory
# -----------
set Fy [expr 4.0e08]; # STEEL yield stress
set Es [expr 2.0e11]; # modulus of steel
set Bs 0.01; # strain-hardening ratio
set R0 18; # control the transition from elastic to plastic branches
set cR1 0.925; # control the transition from elastic to plastic branches
set cR2 0.15; # control the transition from elastic to plastic branches
set IDreinf 1;
set Tension 2;
set Epp 3;
set meter [expr .001]
uniaxialMaterial Steel02 $Tension $Fy $Es $Bs $R0 $cR1 $cR2; # build reinforcement material
puts Fy,$Fy,Es,$Es;
# section GEOMETRY -------------------------------------------------------------
set HSec [expr 0.450]; # Column Depth
set BSec [expr 0.300]; # Column Width
set SecTag 1; # set tag for symmetric section
puts $HSec
section fiberSec $SecTag { # Define the fiber section
# Define the core patch
# patch rect $Epp 20 60 [expr -$BSec/2.0] [expr -$HSec/2.0] [expr $BSec/2.0] [expr -$HSec/4.0];
# patch rect $Epp 20 60 [expr -$BSec/2.0] [expr -$HSec/4.0] [expr $BSec/2.0] [expr 0.0];
# patch rect $Tension 20 60 [expr -$BSec/2.0] [expr 0.0] [expr $BSec/2.0] [expr $HSec/4.0];
# patch rect $Tension 20 60 [expr -$BSec/2.0] [expr $HSec/4.0] [expr $BSec/2.0] [expr $HSec/2.0];
patch rect $Tension 10 20 [expr -$BSec/2.0] [expr -$HSec/2.0] [expr $BSec/2.0] [expr $HSec/2.0];
} ;
source MomentCurvature2D.tcl
MomentCurvature2D $SecTag 0. .2 100
hi
I wanted to model a rectangular steel model with theis specification:
B:300(mm) and H:450 (mm) and Fy=400(Mpa)
I modeled the section in matlab and the plastic moment is about 6000Kn.m
but using opensees give me lots of error
I would really appreciate it if anyone help me
The code:
# --------------------------------------------------------------------------------------------------
# build a section
# Silvia Mazzoni & Frank McKenna, 2006
#
# SET UP ----------------------------------------------------------------------------
wipe; # clear memory of all past model definitions
model BasicBuilder -ndm 2 -ndf 3; # Define the model builder, ndm=#dimension, ndf=#dofs
set dataDir Data; # set up name of data directory -- simple
file mkdir $dataDir; # create data directory
# -----------
set Fy [expr 4.0e08]; # STEEL yield stress
set Es [expr 2.0e11]; # modulus of steel
set Bs 0.01; # strain-hardening ratio
set R0 18; # control the transition from elastic to plastic branches
set cR1 0.925; # control the transition from elastic to plastic branches
set cR2 0.15; # control the transition from elastic to plastic branches
set IDreinf 1;
set Tension 2;
set Epp 3;
set meter [expr .001]
uniaxialMaterial Steel02 $Tension $Fy $Es $Bs $R0 $cR1 $cR2; # build reinforcement material
puts Fy,$Fy,Es,$Es;
# section GEOMETRY -------------------------------------------------------------
set HSec [expr 0.450]; # Column Depth
set BSec [expr 0.300]; # Column Width
set SecTag 1; # set tag for symmetric section
puts $HSec
section fiberSec $SecTag { # Define the fiber section
# Define the core patch
# patch rect $Epp 20 60 [expr -$BSec/2.0] [expr -$HSec/2.0] [expr $BSec/2.0] [expr -$HSec/4.0];
# patch rect $Epp 20 60 [expr -$BSec/2.0] [expr -$HSec/4.0] [expr $BSec/2.0] [expr 0.0];
# patch rect $Tension 20 60 [expr -$BSec/2.0] [expr 0.0] [expr $BSec/2.0] [expr $HSec/4.0];
# patch rect $Tension 20 60 [expr -$BSec/2.0] [expr $HSec/4.0] [expr $BSec/2.0] [expr $HSec/2.0];
patch rect $Tension 10 20 [expr -$BSec/2.0] [expr -$HSec/2.0] [expr $BSec/2.0] [expr $HSec/2.0];
} ;
source MomentCurvature2D.tcl
MomentCurvature2D $SecTag 0. .2 100