コード例 #1
0
n_points_rough = 5  #number of points provided to the interpolation algorithm
n_points_fine = 101  #number of points interpolated

#Anchorage slip
deltaL_mm = 5  #anchorage draw-in (provided by manufacturer) [mm]
deltaL_m = 5e-3  #anchorage draw-in (provided by manufacturer) [m]

#Exact parabola
from model.geometry import geom_utils
a, b, c = geom_utils.fit_parabola(x=np.array([0, lBeam_mm / 2.0, lBeam_mm]),
                                  y=np.array([eEnds, eMidspan_mm, eEnds]))
x_parab_rough, y_parab_rough, z_parab_rough = geom_utils.eq_points_parabola(
    0, lBeam_mm, n_points_rough, a, b, c, angl_Parab_XZ)

#Tendon [mm] definition, layout and friction losses
tendon_mm = presconc.PrestressTendon([])
tendon_mm.roughCoordMtr = np.array(
    [x_parab_rough, y_parab_rough, z_parab_rough])
#Interpolated 3D spline
tendon_mm.pntsInterpTendon(n_points_fine, smoothness=1, kgrade=3)
# Losses of prestressing due to friction
lssFrict_mm = tendon_mm.getLossFriction(coefFric=mu,
                                        k=k_mm,
                                        sigmaP0_extr1=sigmap0max_mm,
                                        sigmaP0_extr2=0.0)
# Losses of prestressing due to anchorage slip (loss due to friction must be
# previously calculated
lssAnch_mm = tendon_mm.getLossAnchor(Ep=Ep_mm,
                                     anc_slip_extr1=deltaL_mm,
                                     anc_slip_extr2=0.0)
stressAfterLossAnch_mm = tendon_mm.stressAfterLossFriction - lssAnch_mm
コード例 #2
0
                                  fy=fy,
                                  b=0.001,
                                  initialStress=fpi)

#Geometry
n_points_rough = 5  #number of points provided to the interpolation algorithm
n_points_fine = 91  #number of points interpolated

#Exact parabola
from model.geometry import geom_utils
a, b, c = geom_utils.fit_parabola(np.array([0, span / 2.0, span]),
                                  np.array([eEnds, eMidspan, eEnds]))
x_parab_rough, y_parab_rough, z_parab_rough = geom_utils.eq_points_parabola(
    0, span, n_points_rough, a, b, c, 0)
#Tendon1 definition, layout
tendon1 = presconc.PrestressTendon([])
tendon1.roughCoordMtr = np.array([x_parab_rough, y_parab_rough, z_parab_rough])
#Interpolated 3D spline
tendon1.pntsInterpTendon(n_points_fine, 1)
#Plot
#tendon1.plot2D(XaxisValues='X',fileName='plot.png',symbolRougPoints='r*',symbolFinePoints='g+',symbolTendon='g-')

corCooTr = modelSpace.newLinearCrdTransf(trfName='corCooTr',
                                         xzVector=xc.Vector([0, -1, 0]))
nodes.defaultTag = 101
tendon1Set = tendon1.creaTendonElements(preprocessor=preprocessor,
                                        materialName='prestressingSteel',
                                        elemTypeName='Truss',
                                        crdTransfName='corCooT',
                                        areaTendon=Aps,
                                        setName='tendon1Set')
コード例 #3
0
# Interpolation
n_points_rough=5    #number of points provided to the interpolation algorithm
n_points_fine=101   #number of points interpolated

#Anchorage slip
deltaL=5            #anchorage draw-in (provided by manufacturer) [mm]

#XC calculation
#Exact parabola
from model.geometry import geom_utils
a,b,c=geom_utils.fit_parabola(x=np.array([0,lBeam/2.0,lBeam]), y=np.array([eEnds,eMidspan,eEnds]))
x_parab_rough,y_parab_rough,z_parab_rough=geom_utils.eq_points_parabola(0,lBeam,n_points_rough,a,b,c,angl_Parab_XZ)

#Tendon definition, layout and friction losses
tendon=presconc.PrestressTendon([])
tendon.roughCoordMtr=np.array([x_parab_rough,y_parab_rough,z_parab_rough])
#Interpolated 3D spline 
tendon.pntsInterpTendon(n_points_fine,smoothness=1,kgrade=3)
# Losses of prestressing due to friction
lssFrict=tendon.getLossFriction(coefFric=mu,k=k,sigmaP0_extr1=sigmap0max,sigmaP0_extr2=0.0)
# Losses of prestressing due to anchorage slip (loss due to friction must be
# previously calculated
lssAnch=tendon.getLossAnchor(Ep=Ep,anc_slip_extr1=deltaL,anc_slip_extr2=0.0)
stressAfterLossAnch=tendon.stressAfterLossFriction-lssAnch

'''
#Plot
fig1,ax2d=tendon.plot2D(XaxisValues='X',resultsToPlot=[[stressAfterLossAnch,'r-','Stress after loss due to anchorage slip']])
fig1.show()
'''