OpenSeesPyAssistant 1.1
OpenSeesPy for everyone
GMP1970 Class Reference

Class that stores funcions and material properties of the vertical steel reinforcement bars with Giuffré, Menegotto and Pinto 1970 as the material model and the OpenSeesPy command type used to model it is Steel02. More...

Inheritance diagram for GMP1970:
MaterialModels GMP1970RCRectShape

Public Member Functions

def __init__ (self, int ID, fy, Ey, b=0.02, R0=20, cR1=0.9, cR2=0.08, a1=0.039, a2=1.0, a3=0.029, a4=1.0)
 Constructor of the class. More...
 
def CheckApplicability (self)
 Implementation of the homonym abstract method. More...
 
def ReInit (self)
 Implementation of the homonym abstract method. More...
 
def ShowInfo (self)
 Implementation of the homonym abstract method. More...
 
def Steel02 (self)
 Generate the material model Steel02 uniaxial Giuffre-Menegotto-Pinto steel material with isotropic strain hardening. More...
 
def UpdateStoredData (self)
 Implementation of the homonym abstract method. More...
 
def CheckApplicability (self)
 Abstract function used to check the applicability of the material model. More...
 

Public Attributes

 a1
 
 a2
 
 a3
 
 a4
 
 b
 
 cR1
 
 cR2
 
 data
 
 Ey
 
 fy
 
 ID
 
 Initialized
 
 R0
 
 section_name_tag
 

Detailed Description

Class that stores funcions and material properties of the vertical steel reinforcement bars with Giuffré, Menegotto and Pinto 1970 as the material model and the OpenSeesPy command type used to model it is Steel02.

For more information about the empirical model for the computation of the parameters, see Giuffré, Menegotto and Pinto 1970 and Carreno et Al. 2020.

Parameters
MaterialModelsParent abstract class.

Definition at line 2470 of file MaterialModels.py.

Constructor & Destructor Documentation

◆ __init__()

def __init__ (   self,
int  ID,
  fy,
  Ey,
  b = 0.02,
  R0 = 20,
  cR1 = 0.9,
  cR2 = 0.08,
  a1 = 0.039,
  a2 = 1.0,
  a3 = 0.029,
  a4 = 1.0 
)

Constructor of the class.

The parameters are suggested as exposed in Carreno et Al. 2020 but also the one suggested by OpenSeesPy documentation are reliable (b = 0.015, R0 = 10, cR1 = 0.925, cR2 = 0.15).

Parameters
ID(int): Unique material model ID.
fy(float): Steel yield strength.
Ey(float): Young modulus.
b(float, optional): Strain-hardening ratio. Defaults to 0.02, according to Carreno et Al. 2020.
R0(int, optional): First parameter to control the transition from elastic to plastic branches. Defaults to 20, according to Carreno et Al. 2020.
cR1(float, optional): Second parameter to control the transition from elastic to plastic branches. Defaults to 0.9, according to Carreno et Al. 2020.
cR2(float, optional): Third parameter to control the transition from elastic to plastic branches. Defaults to 0.08, according to Carreno et Al. 2020.
a1(float, optional): Isotropic hardening parameter, increase of compression yield envelope as proportion of yield strength after a plastic strain. Defaults to 0.039, according to Carreno et Al. 2020.
a2(float, optional): Coupled with a1. Defaults to 1.0, according to Carreno et Al. 2020.
a3(float, optional): Isotropic hardening parameter, increase of tension yield envelope as proportion of yield strength after a plastic strain. Defaults to 0.029, according to Carreno et Al. 2020.
a4(float, optional): Coupled with a3. Defaults to 1.0, according to Carreno et Al. 2020.
Exceptions
NegativeValueID needs to be a positive integer.

Reimplemented in GMP1970RCRectShape.

Definition at line 2478 of file MaterialModels.py.

2478 def __init__(self, ID: int, fy, Ey, b = 0.02, R0 = 20, cR1 = 0.9, cR2 = 0.08, a1 = 0.039, a2 = 1.0, a3 = 0.029, a4 = 1.0):
2479 """
2480 Constructor of the class. The parameters are suggested as exposed in Carreno et Al. 2020 but also the one suggested by OpenSeesPy documentation are reliable
2481 (b = 0.015, R0 = 10, cR1 = 0.925, cR2 = 0.15).
2482
2483 @param ID (int): Unique material model ID.
2484 @param fy (float): Steel yield strength.
2485 @param Ey (float): Young modulus.
2486 @param b (float, optional): Strain-hardening ratio. Defaults to 0.02, according to Carreno et Al. 2020.
2487 @param R0 (int, optional): First parameter to control the transition from elastic to plastic branches. Defaults to 20, according to Carreno et Al. 2020.
2488 @param cR1 (float, optional): Second parameter to control the transition from elastic to plastic branches. Defaults to 0.9, according to Carreno et Al. 2020.
2489 @param cR2 (float, optional): Third parameter to control the transition from elastic to plastic branches. Defaults to 0.08, according to Carreno et Al. 2020.
2490 @param a1 (float, optional): Isotropic hardening parameter, increase of compression yield envelope as proportion of yield strength after a plastic strain.
2491 Defaults to 0.039, according to Carreno et Al. 2020.
2492 @param a2 (float, optional): Coupled with a1. Defaults to 1.0, according to Carreno et Al. 2020.
2493 @param a3 (float, optional): Isotropic hardening parameter, increase of tension yield envelope as proportion of yield strength after a plastic strain.
2494 Defaults to 0.029, according to Carreno et Al. 2020.
2495 @param a4 (float, optional): Coupled with a3. Defaults to 1.0, according to Carreno et Al. 2020.
2496
2497 @exception NegativeValue: ID needs to be a positive integer.
2498 """
2499 # Check
2500 if ID < 1: raise NegativeValue()
2501
2502 # Arguments
2503 self.ID = ID
2504 self.fy = fy
2505 self.Ey = Ey
2506 self.b = b
2507 self.R0 = R0
2508 self.cR1 = cR1
2509 self.cR2 = cR2
2510 self.a1 = a1
2511 self.a2 = a2
2512 self.a3 = a3
2513 self.a4 = a4
2514
2515 # Initialized the parameters that are dependent from others
2516 self.section_name_tag = "None"
2517 self.Initialized = False
2518 self.ReInit()
2519

Member Function Documentation

◆ CheckApplicability()

def CheckApplicability (   self)

Implementation of the homonym abstract method.

See parent class MaterialModels for detailed information.

Reimplemented from MaterialModels.

Definition at line 2575 of file MaterialModels.py.

2575 def CheckApplicability(self):
2576 """
2577 Implementation of the homonym abstract method.
2578 See parent class MaterialModels for detailed information.
2579 """
2580 Check = True
2581 # No checks
2582 if not Check:
2583 print("The validity of the equations is not fullfilled.")
2584 print("!!!!!!! WARNING !!!!!!! Check material model of GMP1970, ID=", self.ID)
2585 print("")
2586
2587
Module for the material models.

◆ ReInit()

def ReInit (   self)

Implementation of the homonym abstract method.

See parent class DataManagement for detailed information.

Definition at line 2520 of file MaterialModels.py.

2520 def ReInit(self):
2521 """
2522 Implementation of the homonym abstract method.
2523 See parent class DataManagement for detailed information.
2524 """
2525 # Check applicability
2526 self.CheckApplicability()
2527
2528 # Members
2529 if self.section_name_tag != "None": self.section_name_tag = self.section_name_tag + " (modified)"
2530
2531 # Data storage for loading/saving
2532 self.UpdateStoredData()
2533
2534
Module with the parent abstract class DataManagement.

◆ ShowInfo()

def ShowInfo (   self)

Implementation of the homonym abstract method.

See parent class DataManagement for detailed information.

Definition at line 2557 of file MaterialModels.py.

2557 def ShowInfo(self):
2558 """
2559 Implementation of the homonym abstract method.
2560 See parent class DataManagement for detailed information.
2561 """
2562 print("")
2563 print("Requested info for GMP1970 (Giuffré-Menegotto-Pinto) material model Parameters, ID = {}".format(self.ID))
2564 print("Section associated: {} ".format(self.section_name_tag))
2565 print("Yield stress fy = {} MPa".format(self.fy/MPa_unit))
2566 print("Young modulus Ey = {} MPa".format(self.Ey/MPa_unit))
2567 print("Strain hardening ratio b = {}".format(self.b))
2568 print("Bauschinger effect factors R0 = {}, cR1 = {} and cR2 = {}".format(self.R0, self.cR1, self.cR2))
2569 print("Isotropic hardening factors a1 = {}, a2 = {}, a3 = {} and a4 = {}".format(self.a1, self.a2, self.a3, self.a4))
2570 print("")
2571
2572 #TODO: add plot option (difficult to implement)
2573
2574

◆ Steel02()

def Steel02 (   self)

Generate the material model Steel02 uniaxial Giuffre-Menegotto-Pinto steel material with isotropic strain hardening.

See _Steel02 function for more information.

Definition at line 2588 of file MaterialModels.py.

2588 def Steel02(self):
2589 """
2590 Generate the material model Steel02 uniaxial Giuffre-Menegotto-Pinto steel material with isotropic strain hardening.
2591 See _Steel02 function for more information.
2592 """
2593 _Steel02(self.ID, self.fy, self.Ey, self.b, self.R0, self.cR1, self.cR2, self.a1, self.a2, self.a3, self.a4)
2594 self.Initialized = True
2595 self.UpdateStoredData()
2596
2597

◆ UpdateStoredData()

def UpdateStoredData (   self)

Implementation of the homonym abstract method.

See parent class DataManagement for detailed information.

Definition at line 2536 of file MaterialModels.py.

2536 def UpdateStoredData(self):
2537 """
2538 Implementation of the homonym abstract method.
2539 See parent class DataManagement for detailed information.
2540 """
2541 self.data = [["INFO_TYPE", "GMP1970"], # Tag for differentiating different data
2542 ["ID", self.ID],
2543 ["section_name_tag", self.section_name_tag],
2544 ["fy", self.fy],
2545 ["Ey", self.Ey],
2546 ["b", self.b],
2547 ["R0", self.R0],
2548 ["cR1", self.cR1],
2549 ["cR2", self.cR2],
2550 ["a1", self.a1],
2551 ["a2", self.a2],
2552 ["a3", self.a3],
2553 ["a4", self.a4],
2554 ["Initialized", self.Initialized]]
2555
2556

Member Data Documentation

◆ a1

a1

Definition at line 2510 of file MaterialModels.py.

◆ a2

a2

Definition at line 2511 of file MaterialModels.py.

◆ a3

a3

Definition at line 2512 of file MaterialModels.py.

◆ a4

a4

Definition at line 2513 of file MaterialModels.py.

◆ b

b

Definition at line 2506 of file MaterialModels.py.

◆ cR1

cR1

Definition at line 2508 of file MaterialModels.py.

◆ cR2

cR2

Definition at line 2509 of file MaterialModels.py.

◆ data

data

Definition at line 2541 of file MaterialModels.py.

◆ Ey

Ey

Definition at line 2505 of file MaterialModels.py.

◆ fy

fy

Definition at line 2504 of file MaterialModels.py.

◆ ID

ID

Definition at line 2503 of file MaterialModels.py.

◆ Initialized

Initialized

Definition at line 2517 of file MaterialModels.py.

◆ R0

R0

Definition at line 2507 of file MaterialModels.py.

◆ section_name_tag

section_name_tag

Definition at line 2516 of file MaterialModels.py.


The documentation for this class was generated from the following file: