Hi everyone,
I want to check the material I am using for an analysis so I want to display the backbone curve of the material before the analysis. Is there a way I can do it?
Moreover if at the end of the analysis (moment-curvature) I want to plot the Moment-curvature diagram, it appears just for a second and then it suddenly disappears. Does anyone know why?
Thank you!
Marco
Plot stress-strain curve
Moderators: silvia, selimgunay, Moderators
Re: Plot stress-strain curve
Hi Marco,
simply create a .tcl with zerolength element (or whatever element) with your material, load the "free" node and record the force-displacement relationship. Later you can reuse this script for testing of any material (backbone or hysteresis)...
simply create a .tcl with zerolength element (or whatever element) with your material, load the "free" node and record the force-displacement relationship. Later you can reuse this script for testing of any material (backbone or hysteresis)...
Zlatko Vidrih
Institute of Structural Engineering, earthquake Engineering and Construction IT
Faculty of Civil and Geodetic Engineering
University of Ljubljana, Slovenia
Institute of Structural Engineering, earthquake Engineering and Construction IT
Faculty of Civil and Geodetic Engineering
University of Ljubljana, Slovenia
Re: Plot stress-strain curve
Hi Zlatko,
thank you for your reply. I did what you said but my record is empty and I do not understand why (error in loading??). Here it is my .tcl file, I would really appreciate if you can test it and help me. Thank you.
Marco
model BasicBuilder -ndm 2 -ndf 3
file mkdir Data;
#---geometric parameters--------
set al 0.3; # section height
set la 0.3; # section lenght
set cf 0.042; # concrete cover
#-------------------------------
# ---material properties-----
set fy 391300.; # [kPa]
set fc 24900.; # [kPa]
#-------------------------
#----fiber-------------
set ncf 2; # n° fiber in cover
set nynuc 25; # n° fiber along al
set nznuc 25; # n° fiber along la
set ny [expr $nynuc+(2*$ncf)];
set nz [expr $nznuc+(2*$ncf)];
#--------------------------------
#---bars diameter----------------
set f_16 0.016; # 16 mm
set A_16 [expr 3.14159*(pow($f_16,2)/4)];
set nb_up 0; # n° of superior rebars
set nb_dw 0; # n° of inferior rebars
#-----------------------------------------------
#---bars diameter----------------
set f_18 0.018; # 18 mm
set A_18 [expr 3.14159*(pow($f_18,2)/4)];
set nb_up1 3; # n° of superior rebars
set nb_dw1 3; # n° of inferior rebars
#-----hoop------------------------------------------
set f_st 0.008; # 8 mm
set s 0.1; # hooop spacing 10 cm
set nbracciax 2;
set nbracciay 2;
#---material identification number---------
set CC 5; # confined concrete (Kent-Park)
set CP 7; # cover concrete (Kent-Park - Concrete01)
set Acc 3; # rebar steel
#----------------------------
set z1 [expr ($la/2)-$cf]
set z4 $z1
set z2 [expr -($z1)]
set z3 $z2
set z5 [expr ($la/2)]
set z8 $z5
set z9 $z5
set z12 $z5
set z6 [expr -($z5)]
set z7 $z6
set z10 $z6
set z11 $z6
set y1 [expr -($al/2)+$cf]
set y2 $y1
set y9 $y1
set y10 $y1
set y3 [expr -($y1)]
set y4 $y3
set y11 $y3
set y12 $y3
set y5 [expr -($al/2)]
set y6 $y5
set y7 [expr -($y5)]
set y8 $y7
#-------MATERIALS---------------
#----STEEL_01:BILINEAR---------------------------------------------------------------3
set Fy 391300.; [kPa]
set Ea 206000000.; [kPa]
set epsy [expr $Fy/$Ea];
set b 0.;
uniaxialMaterial Steel01 3 $Fy $Ea $b;
#--------------------------------------------------------------------------------------
#----CONCRETE_01:KENT-SCOTT-PARK-----------------------confined concrete--------------------------------
uniaxialMaterial Concrete01 5 18767.368 0.0022611 3753.47 0.020417;
#-----------------------------------------------------------------------------------------------------
#----CONCRETE_01:KENT-SCOTT-PARK---------------------unconfined concrete----------------------------------7
uniaxialMaterial Concrete01 7 16600. 0.002 3320. 0.00506;
#--------------------------------------------------------------------------------------------------------
set sezRett 3;
section fiberSec $sezRett {
patch quad $CC $nynuc $nznuc $y1 $z1 $y2 $z2 $y3 $z3 $y4 $z4
patch quad $CP $ny $ncf $y5 $z5 $y6 $z6 $y10 $z10 $y9 $z9
patch quad $CP $ny $ncf $y2 $z2 $y10 $z10 $y11 $z11 $y3 $z3
patch quad $CP $ncf $nznuc $y12 $z12 $y11 $z11 $y7 $z7 $y8 $z8
patch quad $CP $ncf $nznuc $y9 $z9 $y1 $z1 $y4 $z4 $y12 $z12
layer straight $Acc $nb_up $A_16 $y1 $z1 $y2 $z2
layer straight $Acc $nb_up1 $A_18 $y1 $z1 $y2 $z2
layer straight $Acc $nb_dw $A_16 $y4 $z4 $y3 $z3
layer straight $Acc $nb_dw1 $A_18 $y4 $z4 $y3 $z3
}
set axialLoad -400; # + Tension, - Compression
# Define two nodes at (0,0)
node 1001 0.0 0.0
node 1002 0.0 0.0
# Fix all degrees of freedom except axial and bending
fix 1001 1 1 1
fix 1002 0 1 0
# Define element
# tag ndI ndJ secTag
element zeroLengthSection 2001 1001 1002 $sezRett
# Define constant axial load
pattern Plain 3001 "Constant" {
load 1002 $axialLoad 0.0 0.0
}
# Define analysis parameters
integrator LoadControl 0 1 0 0
system SparseGeneral -piv; # Overkill, but may need the pivoting!
test EnergyIncr 1.0e-9 10
numberer Plain
constraints Plain
algorithm Newton
analysis Static
# Do one analysis for constant axial load
analyze 1
# Create recorder
recorder Element -file ele1sec1StressStrain.out –time -ele 2001 section 1 fiber 0.14 0 $CP stressStrain;
recorder Element -file Data/sez1Ele1StressStrainAcc.out -time -ele 2001 section fiber $y3 $z3 $Acc stressStrain;
recorder Element -file Data/sez1Ele1StressStrainCC.out -time -ele 2001 section fiber 0.08 0 $CC stressStrain;
puts OK
thank you for your reply. I did what you said but my record is empty and I do not understand why (error in loading??). Here it is my .tcl file, I would really appreciate if you can test it and help me. Thank you.
Marco
model BasicBuilder -ndm 2 -ndf 3
file mkdir Data;
#---geometric parameters--------
set al 0.3; # section height
set la 0.3; # section lenght
set cf 0.042; # concrete cover
#-------------------------------
# ---material properties-----
set fy 391300.; # [kPa]
set fc 24900.; # [kPa]
#-------------------------
#----fiber-------------
set ncf 2; # n° fiber in cover
set nynuc 25; # n° fiber along al
set nznuc 25; # n° fiber along la
set ny [expr $nynuc+(2*$ncf)];
set nz [expr $nznuc+(2*$ncf)];
#--------------------------------
#---bars diameter----------------
set f_16 0.016; # 16 mm
set A_16 [expr 3.14159*(pow($f_16,2)/4)];
set nb_up 0; # n° of superior rebars
set nb_dw 0; # n° of inferior rebars
#-----------------------------------------------
#---bars diameter----------------
set f_18 0.018; # 18 mm
set A_18 [expr 3.14159*(pow($f_18,2)/4)];
set nb_up1 3; # n° of superior rebars
set nb_dw1 3; # n° of inferior rebars
#-----hoop------------------------------------------
set f_st 0.008; # 8 mm
set s 0.1; # hooop spacing 10 cm
set nbracciax 2;
set nbracciay 2;
#---material identification number---------
set CC 5; # confined concrete (Kent-Park)
set CP 7; # cover concrete (Kent-Park - Concrete01)
set Acc 3; # rebar steel
#----------------------------
set z1 [expr ($la/2)-$cf]
set z4 $z1
set z2 [expr -($z1)]
set z3 $z2
set z5 [expr ($la/2)]
set z8 $z5
set z9 $z5
set z12 $z5
set z6 [expr -($z5)]
set z7 $z6
set z10 $z6
set z11 $z6
set y1 [expr -($al/2)+$cf]
set y2 $y1
set y9 $y1
set y10 $y1
set y3 [expr -($y1)]
set y4 $y3
set y11 $y3
set y12 $y3
set y5 [expr -($al/2)]
set y6 $y5
set y7 [expr -($y5)]
set y8 $y7
#-------MATERIALS---------------
#----STEEL_01:BILINEAR---------------------------------------------------------------3
set Fy 391300.; [kPa]
set Ea 206000000.; [kPa]
set epsy [expr $Fy/$Ea];
set b 0.;
uniaxialMaterial Steel01 3 $Fy $Ea $b;
#--------------------------------------------------------------------------------------
#----CONCRETE_01:KENT-SCOTT-PARK-----------------------confined concrete--------------------------------
uniaxialMaterial Concrete01 5 18767.368 0.0022611 3753.47 0.020417;
#-----------------------------------------------------------------------------------------------------
#----CONCRETE_01:KENT-SCOTT-PARK---------------------unconfined concrete----------------------------------7
uniaxialMaterial Concrete01 7 16600. 0.002 3320. 0.00506;
#--------------------------------------------------------------------------------------------------------
set sezRett 3;
section fiberSec $sezRett {
patch quad $CC $nynuc $nznuc $y1 $z1 $y2 $z2 $y3 $z3 $y4 $z4
patch quad $CP $ny $ncf $y5 $z5 $y6 $z6 $y10 $z10 $y9 $z9
patch quad $CP $ny $ncf $y2 $z2 $y10 $z10 $y11 $z11 $y3 $z3
patch quad $CP $ncf $nznuc $y12 $z12 $y11 $z11 $y7 $z7 $y8 $z8
patch quad $CP $ncf $nznuc $y9 $z9 $y1 $z1 $y4 $z4 $y12 $z12
layer straight $Acc $nb_up $A_16 $y1 $z1 $y2 $z2
layer straight $Acc $nb_up1 $A_18 $y1 $z1 $y2 $z2
layer straight $Acc $nb_dw $A_16 $y4 $z4 $y3 $z3
layer straight $Acc $nb_dw1 $A_18 $y4 $z4 $y3 $z3
}
set axialLoad -400; # + Tension, - Compression
# Define two nodes at (0,0)
node 1001 0.0 0.0
node 1002 0.0 0.0
# Fix all degrees of freedom except axial and bending
fix 1001 1 1 1
fix 1002 0 1 0
# Define element
# tag ndI ndJ secTag
element zeroLengthSection 2001 1001 1002 $sezRett
# Define constant axial load
pattern Plain 3001 "Constant" {
load 1002 $axialLoad 0.0 0.0
}
# Define analysis parameters
integrator LoadControl 0 1 0 0
system SparseGeneral -piv; # Overkill, but may need the pivoting!
test EnergyIncr 1.0e-9 10
numberer Plain
constraints Plain
algorithm Newton
analysis Static
# Do one analysis for constant axial load
analyze 1
# Create recorder
recorder Element -file ele1sec1StressStrain.out –time -ele 2001 section 1 fiber 0.14 0 $CP stressStrain;
recorder Element -file Data/sez1Ele1StressStrainAcc.out -time -ele 2001 section fiber $y3 $z3 $Acc stressStrain;
recorder Element -file Data/sez1Ele1StressStrainCC.out -time -ele 2001 section fiber 0.08 0 $CC stressStrain;
puts OK
-
- Posts: 35
- Joined: Thu Apr 12, 2012 10:09 am
- Location: National Technical University of Athens
Re: Plot stress-strain curve
the recorder command should be before the analyze command !