You are not logged in. Please login or register.
Active topics Unanswered topics
Forum updated
We have recently updated our forums system, and we have cleared all spam topics and users. In case we accidentally deleted your account, please register again. If you miss a topic you have posted before, please let us know.
Post new reply
Post new reply
Compose and post your new reply
You may use: BBCode Smilies
All fields with bold label must be completed before the form is submitted.
Topic review (newest first)
Hello, it is not "add" but the "substract" (eps_c1 is negative, fcs is positive) The strain in ModelCode is a total strain. EPS_CP in ATENA is only relative strain. So from the total strain from ModelCode we need to substract the elastic part.
see figure 5.1.3
https://www.cervenka.cz/downloads/Users … eps_cp.jpg
Hello,
I'm trying to understand the following piece of code found in the TK_GenerateMCConcreteProperties file:
set eps [expr $eps_t/1000 + $fcs/$modulE]
#set eps [expr $fcs / $modulE]
The first term ($eps_t/1000) is equivalent to eps_c1 from Model Code 2010 which represents the strain at peak stress.
I'm not sure why it needs to add the second term ($f_cs/$modulE) and what it represents to find the plastic strain.
Shouldn't the concrete strength start to decrease after eps_c1 ($eps_t/1000), so when the equivalent plastic strain was smaller than eps_c1 it could indicate crushing?
Could someone help me understand this or point some reference I where can find it?
With best regards
Marcos
Dear Marcos,
1) yes, it is for call an exponential function
2) it is definition of $eps_t by different $fck
according Table 5.1-8: Modules Eci, Ec1, strains eps_c1, eps_c,lim and plasticity number
k for normal weight concrete
Best Regards
Zdenek
Dear Pavlo,
Thank you for showing us where to find this code.
However, I have some question about it and would be great if someone could help me to understand.
1st question: "tcl::mathfunc::pow"- This piece of code has been only used to call an exponential function?
2nd question: In the TK_GenerateMCConcreteProperties file, what is the meaning of the following part?
" set eps12 -1.9
set eps16 -2
set eps20 -2.1
set eps25 -2.2
set eps30 -2.3
set eps35 -2.3
set eps40 -2.4
set eps45 -2.5
set eps50 -2.6
set eps55 -2.6
set eps60 -2.7
set eps70 -2.7
set eps80 -2.8
set eps90 -2.9
set eps100 -3
set eps110 -3
set eps120 -3
if {$fck <= 12} {
set eps_t $eps12
} elseif {$fck > 12 && $fck <= 16} {
set eps_t [expr ($eps16-$eps12)*($fcs-12)/(16-12)+$eps12]
} elseif {$fck > 16 && $fck <= 20} {
set eps_t [expr ($eps20-$eps16)*($fcs-16)/(20-16)+$eps16]
} elseif {$fck > 20 && $fck <= 25} {
set eps_t [expr ($eps25-$eps20)*($fcs-20)/(25-20)+$eps20]
} elseif {$fck > 25 && $fck <= 30} {
set eps_t [expr ($eps30-$eps25)*($fcs-25)/(30-25)+$eps25]
} elseif {$fck > 30 && $fck <= 35} {
set eps_t [expr ($eps35-$eps30)*($fcs-30)/(35-30)+$eps30]
} elseif {$fck > 35 && $fck <= 40} {
set eps_t [expr ($eps40-$eps35)*($fcs-35)/(40-35)+$eps35]
} elseif {$fck > 40 && $fck <= 45} {
set eps_t [expr ($eps45-$eps40)*($fcs-40)/(45-40)+$eps40]
} elseif {$fck > 45 && $fck <= 50} {
set eps_t [expr ($eps50-$eps45)*($fcs-45)/(50-45)+$eps45]
} elseif {$fck > 50 && $fck <= 55} {
set eps_t [expr ($eps55-$eps50)*($fcs-50)/(55-50)+$eps50]
} elseif {$fck > 55 && $fck <= 60} {
set eps_t [expr ($eps60-$eps55)*($fcs-55)/(60-55)+$eps55]
} elseif {$fck > 60 && $fck <= 70} {
set eps_t [expr ($eps70-$eps60)*($fcs-60)/(70-60)+$eps60]
} elseif {$fck > 70 && $fck <= 80} {
set eps_t [expr ($eps80-$eps70)*($fcs-70)/(80-70)+$eps70]
} elseif {$fck > 80 && $fck <= 90} {
set eps_t [expr ($eps90-$eps80)*($fcs-80)/(90-80)+$eps80]
} elseif {$fck > 90 && $fck <= 100} {
set eps_t [expr ($eps100-$eps90)*($fcs-90)/(100-90)+$eps90]
} elseif {$fck > 100 } {
set eps_t $eps100
}"
Best regards,
Marcos
THis is for Eurocode (C:\Program Files\GiD\GiD 14.0\problemtypes\Atena\include.src.bas\TK_GenerateEC2Properties.tcl):
# $SafetyFormat
if { $StrengthClass == "12/15" } {
set fck 12
set beton 15
set fcm 20
set fctm 1.6
set fctk 1.1
set modulE 27000
}
if { $StrengthClass == "16/20" } {
set fck 16
set beton 20
set fcm 24
set fctm 1.9
set fctk 1.3
set modulE 29000
}
if { $StrengthClass == "20/25" } {
set fck 20
set beton 25
set fcm 28
set fctm 2.2
set fctk 1.5
set modulE 30000
}
if { $StrengthClass == "25/30" } {
set fck 25
set beton 30
set fcm 33
set fctm 2.6
set fctk 1.8
set modulE 31000
}
if { $StrengthClass == "30/37" } {
set fck 30
set beton 37
set fcm 38
set fctm 2.9
set fctk 2
set modulE 32000
}
if { $StrengthClass == "35/45" } {
set fck 35
set beton 45
set fcm 43
set fctm 3.2
set fctk 2.2
set modulE 34000
}
if { $StrengthClass == "40/50" } {
set fck 40
set beton 50
set fcm 48
set fctm 3.5
set fctk 2.5
set modulE 35000
}
if { $StrengthClass == "45/55" } {
set fck 45
set beton 55
set fcm 53
set fctm 3.8
set fctk 2.7
set modulE 36000
}
if { $StrengthClass == "50/60" } {
set fck 50
set beton 60
set fcm 58
set fctm 4.1
set fctk 2.9
set modulE 37000
}
if { $StrengthClass == "55/67" } {
set fck 55
set beton 67
set fcm 63
set fctm 4.2
set fctk 3
set modulE 38000
}
if { $StrengthClass == "60/75" } {
set fck 60
set beton 75
set fcm 68
set fctm 4.4
set fctk 3.1
set modulE 39000
}
if { $StrengthClass == "70/85" } {
set fck 70
set beton 85
set fcm 78
set fctm 4.6
set fctk 3.2
set modulE 41000
}
if { $StrengthClass == "80/95" } {
set fck 80
set beton 95
set fcm 88
set fctm 4.8
set fctk 3.4
set modulE 42000
}
if { $StrengthClass == "90/105" } {
set fck 90
set beton 105
set fcm 98
set fctm 5
set fctk 3.5
set modulE 44000
}
if { $SafetyFormat == "Design" } {set gamma 1.5}
if { $SafetyFormat == "Characteristic" } {set gamma 1.0}
if { $SafetyFormat == "Mean" } {set gamma 1.0}
if { $SafetyFormat == "EN1992-2" } {set gamma 1.18577}
# = 1,1 * 1,15 / 1,5 (CSN EN 1992-2 5.7)
#Young_s_Modulus-E
set modulE2 [format %g%s $modulE "MPa"]
set on [DWLocalSetValue $GDN $STRUCT Young_s_Modulus-E $modulE2]
WarnWinText "Young_s_Modulus-E = $modulE2"
set on [DWLocalSetValue $GDN $STRUCT Poisson_s_Ratio 0.2]
WarnWinText "Poisson_s_Ratio = 0.2"
if { $SafetyFormat == "Mean" } {
#Tension_Strength-FT
set ft [expr $fctm / $gamma]
#Compresion_Strength-FC
set fcs [expr $fcm / -$gamma]
} else {
#Tension_Strength-FT
set ft [expr $fctk / $gamma]
#Compresion_Strength-FC
set fcs [expr $fck / -$gamma]
}
#Tension_Strength-FT
set ft2 [format %10.3g%s $ft "MPa"]
set on [DWLocalSetValue $GDN $STRUCT Tension_Strength-FT $ft2]
WarnWinText "Tension_Strength-FT = $ft2"
#Compresion_Strength-FC
set fcs2 [format %10.3g%s $fcs "MPa"]
set on [DWLocalSetValue $GDN $STRUCT Compresion_Strength-FC $fcs2]
WarnWinText "Compresion_Strength-FC = $fcs2"
#Fracture_Energy-GF
set gf [expr $ft * 0.000025]
set gf [format %10.3g%s $gf "MN/m"]
set on [DWLocalSetValue $GDN $STRUCT Fracture_Energy-GF $gf]
WarnWinText "Fracture_Energy-GF = $gf"
set on [DWLocalSetValue $GDN $STRUCT Critical_Comp_Disp-WD -0.0005m]
WarnWinText "Critical_Comp_Disp-WD = -0.0005m"
#Plastic_Strain-EPS_CP
#eps_cp = eps_c1 – fc/E
#WarnWinText "Fcm = $fcm"
#set a [tcl::mathfunc::pow $fcm 0.31]
#WarnWinText "Fcm na 0,31 = $a"
set eps [expr -0.7 * [tcl::mathfunc::pow $fcm 0.31]/1000 - ($fcs / $modulE)]
#set eps [expr $fcs / $modulE]
set eps [format %10.5g%s $eps ""]
set on [DWLocalSetValue $GDN $STRUCT Plastic_Strain-EPS_CP $eps]
WarnWinText "Plastic_Strain-EPS_CP = $eps"
#set epsold [expr $fcs / $modulE]
#WarnWinText "Plastic_Strain-EPS_CP old = $epsold"
#Onset_of_Crushing-FC0
set ft0 [expr $ft * -2.1]
set ft0 [format %10.3g%s $ft0 "MPa"]
set on [DWLocalSetValue $GDN $STRUCT Onset_of_Crushing-FC0 $ft0]
WarnWinText "Onset_of_Crushing-FC0 = $ft0"
set on [DWLocalSetValue $GDN $STRUCT Excentricity-EXC 0.52]
WarnWinText "Excentricity-EXC = 0.52"
set on [DWLocalSetValue $GDN $STRUCT Dir_of_pl_Flow-BETA 0.0]
WarnWinText "Dir_of_pl_Flow-BETA = 0.0"
set on [DWLocalSetValue $GDN $STRUCT Rho-Density 0.0023kton/m^3]
WarnWinText "Rho-Density = 0.0023kton/m^3"
This is for ModeCode (C:\Program Files\GiD\GiD 14.0\problemtypes\Atena\include.src.bas\TK_GenerateMCConcreteProperties.tcl):
#Cubic-Characteristic,Cubic-Mean,Cylinder-Characteristic,Cylinder-Mean)
#Cylinder-Characteristic
set fcka $StrengthValue
if { $fcka <0 } {
set fcka [expr -1.0*$fcka]
} else {
set fcka [expr 1.0*$fcka]
}
if { $StrengthType == "Cubic-Characteristic" } {
set fcka [expr $StrengthValue*0.85]
} elseif { $StrengthType == "Cubic-Mean" } {
set fcka [expr ($StrengthValue-8)*0.85]
} elseif { $StrengthType == "Cylinder-Mean" } {
set fcka [expr ($StrengthValue-8)]
}
set fck $fcka
if { $fck <0 } {
WarnWinText ""
WarnWinText "----------Error------------"
WarnWinText "Error: Fck < 0 MPa. It is not allowed."
WarnWinText "----------Error------------"
WarnWinText ""
return ""
}
if {$fck < 12} {
WarnWinText ""
WarnWinText "----------Warning------------"
WarnWinText "Fck < 12 MPa, Fcm < 20MPa"
WarnWinText "This calculation acoording to the ModelCode is not suitable for Fck < 12 MPa or Fcm < 20MPa."
WarnWinText "Use cylinder characteristic strength for generation and characteristic Safety Format"
WarnWinText "----------Warning------------"
WarnWinText ""
}
set gamma 1.0
if { $SafetyFormat == "Design" } {set gamma 1.5}
if { $SafetyFormat == "Characteristic" } {set gamma 1.0}
if { $SafetyFormat == "Mean" } {set gamma 1.0}
if { $SafetyFormat == "EN1992-2" } {set gamma 1.18577}
set fcm [expr $fck+8 ]
set ea [expr ($fck+8.0)/10.0]
set eb [expr 1.0/3.0]
set modulE [expr 21500*1*[tcl::mathfunc::pow $ea $eb]]
if {$fck <= 50} {
set fctm [expr 0.3*[tcl::mathfunc::pow $fck 0.666666666666666]]
set exc 0.52
} else {
set fctm [expr 2.12*log(1+0.1*($fck+8))]
set exc 0.51
}
set fctk [expr 0.7*$fctm]
if { $SafetyFormat == "Mean" } {
set ft [expr $fctm/$gamma]
set fcs [expr $fcm/$gamma]
} else {
set ft [expr $fctk/$gamma]
set fcs [expr $fck/$gamma]
}
#set gf [expr 73*(($fcs)^(18/100))]
set gf [expr 73.0*[tcl::mathfunc::pow $fcs 0.18]]
set eps12 -1.9
set eps16 -2
set eps20 -2.1
set eps25 -2.2
set eps30 -2.3
set eps35 -2.3
set eps40 -2.4
set eps45 -2.5
set eps50 -2.6
set eps55 -2.6
set eps60 -2.7
set eps70 -2.7
set eps80 -2.8
set eps90 -2.9
set eps100 -3
set eps110 -3
set eps120 -3
if {$fck <= 12} {
set eps_t $eps12
} elseif {$fck > 12 && $fck <= 16} {
set eps_t [expr ($eps16-$eps12)*($fcs-12)/(16-12)+$eps12]
} elseif {$fck > 16 && $fck <= 20} {
set eps_t [expr ($eps20-$eps16)*($fcs-16)/(20-16)+$eps16]
} elseif {$fck > 20 && $fck <= 25} {
set eps_t [expr ($eps25-$eps20)*($fcs-20)/(25-20)+$eps20]
} elseif {$fck > 25 && $fck <= 30} {
set eps_t [expr ($eps30-$eps25)*($fcs-25)/(30-25)+$eps25]
} elseif {$fck > 30 && $fck <= 35} {
set eps_t [expr ($eps35-$eps30)*($fcs-30)/(35-30)+$eps30]
} elseif {$fck > 35 && $fck <= 40} {
set eps_t [expr ($eps40-$eps35)*($fcs-35)/(40-35)+$eps35]
} elseif {$fck > 40 && $fck <= 45} {
set eps_t [expr ($eps45-$eps40)*($fcs-40)/(45-40)+$eps40]
} elseif {$fck > 45 && $fck <= 50} {
set eps_t [expr ($eps50-$eps45)*($fcs-45)/(50-45)+$eps45]
} elseif {$fck > 50 && $fck <= 55} {
set eps_t [expr ($eps55-$eps50)*($fcs-50)/(55-50)+$eps50]
} elseif {$fck > 55 && $fck <= 60} {
set eps_t [expr ($eps60-$eps55)*($fcs-55)/(60-55)+$eps55]
} elseif {$fck > 60 && $fck <= 70} {
set eps_t [expr ($eps70-$eps60)*($fcs-60)/(70-60)+$eps60]
} elseif {$fck > 70 && $fck <= 80} {
set eps_t [expr ($eps80-$eps70)*($fcs-70)/(80-70)+$eps70]
} elseif {$fck > 80 && $fck <= 90} {
set eps_t [expr ($eps90-$eps80)*($fcs-80)/(90-80)+$eps80]
} elseif {$fck > 90 && $fck <= 100} {
set eps_t [expr ($eps100-$eps90)*($fcs-90)/(100-90)+$eps90]
} elseif {$fck > 100 } {
set eps_t $eps100
}
set eps [expr $eps_t/1000 + $fcs/$modulE]
#set eps [expr $fcs / $modulE]
#Onset_of_Crushing-FC0
set ft0 [expr $ft* -2.1]
jpv wrote:Many thanks. The equation given in fib bulletin 1 for E agrees with the generated parameters, but not the one given for fracture energy. The theory manual gives a reference to VOS (1983), however I do not get the same values as the automatically generated ones. Can you please confirm which formula is used for fracture energy and a reference for it?
Thanks
You can also check .bas and .tcl files in folder /GiD/problemtypes/Atena. All formulas are written in these scripts.
I found it
Thank you Mr. Pryl
Dear Marcos,
please see ATENA Troubleshooting, 2.2.3 How can I model Fibre Reinforced Concrete (FRC, UHPC, SHCC) in ATENA? and 2.2.4 I want to use the user-defined stress-strain law of concrete to replace that used in ATENA program. How can I do it?
Regards.
Hello,
I'm also using GiD (v10.0.9) as pre-processor for ATENA Studio (v5.6.0).
In the CC3DNonlinearCimentitious2 material model family, is it possible to use other types of crack opening law and compression softening?
I've noted that this is possible using SBETA material considering plane stress. There is a way to do this in 3D models?
Best regards
Marcos
Excellent, many thanks for your help
According to Zdenek Janda, who has implemented the corresponding dialogs in ATENA GiD, the formula for generating the mean fracture energy comes from the Fib Model Code 2010 (MC2010)
Gf = 73.0*fcm^0.18
where the mean cylinder strength is
fcm = fck+8
Many thanks. The equation given in fib bulletin 1 for E agrees with the generated parameters, but not the one given for fracture energy. The theory manual gives a reference to VOS (1983), however I do not get the same values as the automatically generated ones. Can you please confirm which formula is used for fracture energy and a reference for it?
Thanks