def plotDesignStressStrainDiagram(self,preprocessor,path=''): if self.materialDiagramD== None: self.defDiagD(preprocessor) if self.tensionStiffparam==None: retval= graph_material.UniaxialMaterialDiagramGraphic(epsMin=self.epsilonU(),epsMax=0,title=self.materialName + ' design stress-strain diagram') else: retval= graph_material.UniaxialMaterialDiagramGraphic(epsMin=self.epsilonU(),epsMax=20*self.fctd()/self.E0(),title=self.materialName + ' design stress-strain diagram') retval.setupGraphic(plt,self.materialDiagramD) fileName= path+self.materialName+'_design_stress_strain_diagram' retval.savefig(plt,fileName+'.jpeg') return retval
def plotDesignStressStrainDiagram(self,preprocessor,path=''): '''Draws the steel design diagram.''' if self.materialDiagramD== None: self.defDiagD(preprocessor) retval= mg.UniaxialMaterialDiagramGraphic(-0.016,0.016, self.materialName + ' design stress-strain diagram') retval.setupGraphic(plt,self.materialDiagramD) fileName= path+self.materialName+'_design_stress_strain_diagram' retval.savefig(plt,fileName+'.jpeg') retval.savefig(plt,fileName+'.eps') return retval
def report_concrete02(concrDiag, paramTensStiffening, grTitle, grFileName, texFileName): '''return a LaTeX table that depicts the concrete compressive, tensile and tension-stiffening properties as well as its stress-strain graphic. :param concrDiag: concrete material of type concrete02 :param paramTensStiffening: instance of the object concrete_base.paramTensStiffness that defines the parameters of tension stiffness. :param grTitle: title for the graphic :param grFileName: name of the graphics file :param texFileName: name of the LaTeX file ''' grph = graph_material.UniaxialMaterialDiagramGraphic( epsMin=concrDiag.epscu, epsMax=paramTensStiffening.eps_y, title=grTitle) grph.setupGraphic(plt, concrDiag) grph.savefig(plt, grFileName + '.png') grph.savefig(plt, grFileName + '.eps') concrRep = ConcreteReport(concrDiag) grFileNameNoPath = grFileName.split('/')[grFileName.count('/')] f = open(texFileName, 'w') f.write('\\documentclass{article} \n') f.write('\\usepackage{graphicx} \n') f.write('\\usepackage{multirow} \n') f.write('\\usepackage{wasysym} \n') f.write('\\usepackage{gensymb} \n') f.write('\\begin{document} \n') f.write('\\begin{table} \n') f.write('\\begin{center} \n') f.write('\\begin{tabular}{ll} \n') f.write('\\begin{minipage}{95mm} \n') f.write('\\vspace{2mm} \n') f.write('\\begin{center} \n') f.write('\\includegraphics[width=90mm]{' + grFileNameNoPath + '} \n') f.write('\\end{center} \n') f.write('\\vspace{1pt} \n') f.write('\\end{minipage} & \n') f.write('\\begin{tabular}{lr} \n') f.write(concrRep.tableCompress()) f.write(concrRep.tableTens()) f.write(concrRep.tableTensStiff(paramTensStiffening)) f.write('\\end{tabular} \n') f.write('\\end{tabular} \n') f.write('\\end{center} \n') f.write('\\end{table} \n') f.write('\\end{document} \n') f.close() return
print 'hceff_EC2= ', hceff_EC2 Aceff_EC2_gross = sccEl1.getGrossEffectiveConcreteArea(hceff_EC2) print 'Aceff_EC2_gross= ', Aceff_EC2_gross Aceff_EC2_net = sccEl1.getNetEffectiveConcreteArea(hceff_EC2, 'tensSetFb', 15.0) print 'Aceff_EC2_net= ', Aceff_EC2_net quit() ### FIGURES & REPORTS # #report concrete material from postprocess.reports import graph_material import matplotlib.pyplot as plt stressStrainDiag = graph_material.UniaxialMaterialDiagramGraphic( epsMin=concrete.epsilonU(), epsMax=-concrete.epsilonU(), title='hola mundo') # strain=stressStrainDiag.getStrains() # stress=stressStrainDiag.getStresses(diag=concrDiagram) stressStrainDiag.setupGraphic(plt=plt, materialDiagram=concrDiagram) stressStrainDiag.show(plt) for f in setsRCEl1.concrFibers.fSet: print 'y= ', f.getLocY(), 'z= ', f.getLocZ(), 'stress =', f.getForce( ) / f.getArea() * 1e-6, 'strain= ', f.getStrain() ''' # #plot cross-section strains and stresses from postprocess import utils_display # ''' # fiberSet: set of fibers to be represented # title: general title for the graphic