예제 #1
0
 def setupSets(self):
     self.setsRC = fiber_sets.fiberSectionSetupRCSets(
         scc=self.sct,
         concrMatTag=self.concrTagK,
         concrSetName="concrSetFb",
         reinfMatTag=self.rsteelTagK,
         reinfSetName="reinfSetFb")
     self.tensSetFb = self.setsRC.reselTensionFibers(
         scc=self.sct, tensionFibersSetName='tensSetFb')
예제 #2
0
RMZ2= nodes.getNode(2).getReaction[5]   # Bending moment Mz reaction at node 2

print('Rnode1= (',nodes.getNode(1).getReaction[0],',',nodes.getNode(1).getReaction[1],',',nodes.getNode(1).getReaction[2],',',nodes.getNode(1).getReaction[3],',',nodes.getNode(1).getReaction[4],',',nodes.getNode(1).getReaction[5],')')
print('Rnode2= (',nodes.getNode(2).getReaction[0],',',nodes.getNode(2).getReaction[1],',',nodes.getNode(2).getReaction[2],',',nodes.getNode(2).getReaction[3],',',nodes.getNode(2).getReaction[4],',',nodes.getNode(2).getReaction[5],')')
'''
elements = preprocessor.getElementHandler
ele1 = elements.getElement(1)
# section of element 1: it's the copy of the material section 'sctFibers' assigned
# to element 1 and specific of this element. It has the tensional state of the element
sccEl1 = ele1.getSection()
fibersSccEl1 = sccEl1.getFibers()

# Creation of two separate sets of fibers: concrete and reinforcement steel
setsRCEl1 = fiber_sets.fiberSectionSetupRCSets(scc=sccEl1,
                                               concrMatTag=concrete.matTagK,
                                               concrSetName="concrSetFbEl1",
                                               reinfMatTag=rfSteel.matTagK,
                                               reinfSetName="reinfSetFbEl1")

sumAreas = fibersSccEl1.getArea(1.0)  # total sum of the fibers area
# that sum is multiplied by the coefficient
# passed as a parameter

Iz = fibersSccEl1.getIz(1.0, 0.0)
IEIy = sccEl1.getInitialTangentStiffness().at(3, 3)
IEIz = sccEl1.getInitialTangentStiffness().at(2, 2)
TEIy = sccEl1.getTangentStiffness().at(3, 3)
TEIz = sccEl1.getTangentStiffness().at(2, 2)
Iy = fibersSccEl1.getIy(1.0, 0.0)
esfN = fibersSccEl1.getResultant()
esfMy = fibersSccEl1.getMy(0.0)
예제 #3
0
analysis= solution.simpleStaticModifiedNewton(problem)
#analysis= predefined_solutions.simple_static_modified_newton(problem)
analOk= analysis.analyze(1)


nodes= preprocessor.getNodeHandler
nodes.calculateNodalReactions(True,1e-7)
#nodB.checkReactionForce(0.5)

#section of element 1: it's the copy of the material section 'sctFibers' assigned
#to element 1 and specific of this element. It has the tensional state of the element
sccEl1= ele1.getSection()         
fibersSccEl1= sccEl1.getFibers()

#Creation of two separate sets of fibers: concrete and reinforcement steel 
setsRCEl1= fiber_sets.fiberSectionSetupRCSets(scc=sccEl1,concrMatTag=concrete.matTagK,concrSetName="concrSetFbEl1",reinfMatTag=rfSteel.matTagK,reinfSetName="reinfSetFbEl1")

#Equilibrium.
RNA= nodA.getReaction[0]
RNB= nodB.getReaction[0]
ratio0= math.sqrt(RNA**2+RNB**2)/(width*depth*f_ck)

#Neutral axis depth
x= sccEl1.getNeutralAxisDepth()
xTeor= -0.184594790641
ratio1=(x-xTeor)/x
#Neutral axis plane (parallel to section's Y-axis)
zNA=sccEl1.getNeutralAxis().getParamB()
zNATeor= 0.115405209359 #0.13263453242377543
ratio2=(zNA-zNATeor)/zNA
#checking neutral axis depth vs. neutral axis plane calculations
예제 #4
0
Iz = fibras.getIz(1.0, 0.0)
IEIy = scc.getInitialTangentStiffness().at(3, 3)
IEIz = scc.getInitialTangentStiffness().at(2, 2)
TEIy = scc.getTangentStiffness().at(3, 3)
TEIz = scc.getTangentStiffness().at(2, 2)
Iy = fibras.getIy(1.0, 0.0)
esfN = fibras.getResultant()
esfMy = fibras.getMy(0.0)
esfMz = fibras.getMz(0.0)
defMz = scc.getSectionDeformationByName("defMz")
defN = scc.getSectionDeformationByName("defN")
x = scc.getNeutralAxisDepth()
Resul = scc.getStressResultant()
Deform = scc.getSectionDeformation()
setsRC = fiber_sets.fiberSectionSetupRCSets(scc, EHE_materials.HA25.matTagD,
                                            'concrete',
                                            EHE_materials.B500S.matTagD,
                                            "reinforcement")

fibraCEpsMin = -1
fMin = setsRC.concrFibers.getFiberWithMinStrain()

epsCMin = fMin.getMaterial().getStrain()  # Minimum strain in concrete.
sgCMin = fMin.getMaterial().getStress()  # Minimum stress in concrete.
YepsCMin = fMin.getPos().x  # Y Z coordinates for the minimum concrete strain.
ZepsCMin = fMin.getPos().y

fMin = setsRC.reinfFibers.getFiberWithMinStrain()

epsSMin = fMin.getMaterial().getStrain()  # Minimum strain in steel.
sgSMin = fMin.getMaterial().getStress()  # Minimum stress in steel.
YepsSMin = fMin.getPos().x  # Y Z coordinates for the minimum steel strain.
예제 #5
0
comb = combs[key]
predefined_solutions.solveComb(
    preprocessor,
    nmbComb=key,
    analysis=predefined_solutions.plain_static_modified_newton(feProblem),
    numSteps=1)

for e in elements:
    e.getResistingForce()
    scc = e.getSection()
    sccProp = scc.getProp("sectionData")
    concrTag = sccProp.fiberSectionParameters.concrType.matTagK
    rsteelTag = sccProp.fiberSectionParameters.reinfSteelType.matTagK
    setsRC = fiber_sets.fiberSectionSetupRCSets(scc=scc,
                                                concrMatTag=concrTag,
                                                concrSetName="concrSetFb",
                                                reinfMatTag=rsteelTag,
                                                reinfSetName="reinfSetFb")
    setsRC.reselTensionFibers(scc=scc, tensionFibersSetName='tensSetFb')
    ###Borrar
    setTfib = setsRC.tensionFibers
    print 'AsTens=', setTfib.getArea(1.0), 'nFibers= ', setTfib.getNumFibers()
    ###
    As = setsRC.tensionFibers.getArea(1.0)
    x = scc.getNeutralAxisDepth()
    d = scc.getEffectiveDepth()
    h = scc.getLeverArm()
    print 'x= ', x, 'd= ', d, 'h= ', h
    hceff = min(2.5 * abs(h - d), abs(h - x) / 3.0, abs(h) / 2.0)
    Aceff = scc.getNetEffectiveConcreteArea(hceff, "reinfSetFb", 15.0)
    print 'Aceff= ', Aceff
예제 #6
0
sumAreas= fibras.getArea(1.0)
Iz= fibras.getIz(1.0,0.0)
IEIy= scc.getInitialTangentStiffness().at(3,3)
IEIz= scc.getInitialTangentStiffness().at(2,2)
TEIy= scc.getTangentStiffness().at(3,3)
TEIz= scc.getTangentStiffness().at(2,2)
Iy= fibras.getIy(1.0,0.0)
esfN= fibras.getResultant()
esfMy= fibras.getMy(0.0)
esfMz= fibras.getMz(0.0)
defMz= scc.getSectionDeformationByName("defMz")
defN= scc.getSectionDeformationByName("defN")
x= scc.getNeutralAxisDepth()
Resul= scc.getStressResultant()
Deform= scc.getSectionDeformation()
setsRC= fiber_sets.fiberSectionSetupRCSets(scc,EHE_materials.HA25.matTagD,'concrete',EHE_materials.B500S.matTagD,"reinforcement")


fibraCEpsMin= -1
fMin= setsRC.concrFibers.getFiberWithMinStrain()

epsCMin= fMin.getMaterial().getStrain() # Minimum strain in concrete.
sgCMin= fMin.getMaterial().getStress() # Minimum stress in concrete.
YepsCMin= fMin.getPos().x # Y Z coordinates for the minimum concrete strain.
ZepsCMin= fMin.getPos().y

fMin= setsRC.reinfFibers.getFiberWithMinStrain()

epsSMin= fMin.getMaterial().getStrain() # Minimum strain in steel.
sgSMin= fMin.getMaterial().getStress() # Minimum stress in steel.
YepsSMin= fMin.getPos().x # Y Z coordinates for the minimum steel strain.
예제 #7
0
 def setupSets(self):
     self.setsRC= fiber_sets.fiberSectionSetupRCSets(scc=self.sct,concrMatTag=self.concrTagK,concrSetName="concrSetFb",reinfMatTag=self.rsteelTagK,reinfSetName="reinfSetFb")
     self.tensSetFb=self.setsRC.reselTensionFibers(scc=self.sct,tensionFibersSetName='tensSetFb')