Code:
finish
/clear
/title,Grundsystem!Einheiten
![kN]
![m]
![deg]
!Werte
!Einlesen der optimierten Werte aus Matlab [l5,l6,l7,..]
!/inp,parameter,inp
!Testwerte - werden später eingelesen / optimierten
q = 1
l5 = 2
l6 = 3
l7 = 2
w2 = 100/1000
Rdelta = 10/1000
P = 1 !Vorspannkräfte
P1 = P
P2 = P
P3 = P
qS = q !Streckenlast
gros = 100/1000 !Elementgröße
delta = gros/20 !Toleranz
!Punkte
x1 = 0
y1 = 0
x2 = 5
y2 = 0
x3 = 10
y3 = 0
x4 = 15
y4 = 0
x5 = 20
y5 = 0
x6 = x2
y6 = -l5
x7 = x3
y7 = -l6
x8 = x4
y8 = -l7
!Querschnittsgrößen
!Biegeträger
w1 = 300/1000
!w2 wird eingelesen
t1 = 15/1000
t2 = t1
!Druckstreben
Ro = 100/1000
!Rdelta wird eingelesen
Ri = Ro-Rdelta
!Seile
R = 10/1000
N = 16
!Materialeigenschaften
Estahl = 210000*1000
Eseil = 160000*1000
quer = 0.3
!dens = 7.85e-9 ?
!Preprocessing
/prep7
!Definition Keypoints
k,1,x1,y2
k,2,x2,y2
k,3,x3,y3
k,4,x4,y4
k,5,x5,y5
k,6,x6,y6
k,7,x7,y7
k,8,x8,y8
!Definition Linien
!Biegeträger
l,1,2
l,2,3
l,3,4
l,4,5
!Druckstreben
l,2,6
l,3,7
l,4,8
!Seile
l,1,6
l,6,3
l,1,7
l,7,5
l,3,8
l,8,5
!Definition von lokalen Koordinatensystemen - für späteres Vorspannen
*afun,deg
alpha89=atan(y6/x2)
alpha1011=atan(y7/x3)
alpha1213=atan(y8/x2)
local,18,0,0,0,0,alpha89,0,0 !Seil 8
local,19,0,x6,y6,0,-alpha89,0,0 !Seil 9
local,20,0,0,0,0,alpha1011,0,0 !Seil 10
local,21,0,x7,y7,0,-alpha1011,0,0 !Seil 11
local,22,0,x3,y3,0,alpha1213,0,0 !Seil 12
local,23,0,x8,y8,0,-alpha1213,0,0 !Seil 13
CSYS,0 !Zurücksetzen auf globales Koordinatensystem
!Definition Element
et,1,beam188
et,2,link180
mat,1 !Stahl
mp,ex,1,Estahl
mp,nuxy,1,quer
! mp,dens,1,dens
mat,2 !Seile
mp,ex,2,Eseil
mp,nuxy,2,quer
! mp,dens,2,dens
!Balken, T-Profil
sectype,1,beam,T,Biegetra
secdata,w1,-w2,t1,t2 !-w2 für gespiegelte Anordnung (Flansch oben)
keyopt,1,1,0 !Sechs Freiheitsgrade
keyopt,1,3,0 !Kubische Shape-Functions
!Balken, Rohrprofil
sectype,2,beam,ctube,Druckstr
secdata,Ri,Ro,N
keyopt,1,1,0 !Sechs Freiheitsgrade
keyopt,1,3,3 !Kubische Shape-Functions
!Fachwerkstab, Kreisprofil
sectype,3,link !,csolid,Seile
secdata,R !,N
seccontrol,0,1 !Nur Zug
!Vernetzen
!Biegeträger
lsel,s,line,,1,4
esize,gros
type,1
SECNUM,1
mat,1
lmesh,all
lsel,all
!Druckstreben
lsel,s,line,,5,7
esize,gros
type,1
SECNUM,2
mat,1
lmesh,all
lsel,all
!Seile
lsel,s,line,,8,13
esize,gros
type,2
SECNUM,3
mat,2
lmesh,all
lsel,all
!Auflager
nsel,s,loc,x,0-delta,0+delta
d,all,ux,0
d,all,uy,0
d,all,uz,0
d,all,rotx,0
d,all,roty,0
nsel,all
nsel,s,loc,x,20-delta,20+delta
d,all,ux,0
d,all,uy,0
d,all,uz,0
d,all,rotx,0
d,all,roty,0
nsel,all
!Zwischenauflager [DEBUGGING]
nsel,s,loc,x,0+delta,20-delta
nsel,r,loc,y,0+delta,y7
d,all,uz,0
nsel,all
!Einfügen der Vorspann-Elemente
psmesh,8,Vorspa08,,l,8,18,X,,node(x2/2,y6/2,0)
psmesh,9,Vorspa09,,l,9,19,X,,node(x2+x2/2,y6/2,0)
psmesh,10,Vorspa10,,l,10,20,X,,node(x3/2,y7/2,0)
psmesh,11,Vorspa11,,l,11,21,X,,node(x3+x3/2,y7/2,0)
psmesh,12,Vorspa12,,l,12,22,X,,node(x3+x2/2,y8/2,0)
psmesh,13,Vorspa13,,l,13,23,X,,node(x4+x2/2,y8/2,0)
esel,s,ename,,beam188
esel,a,ename,,prets179
esel,a,ename,,link180
finish
!Solution
/solu
autots,on
nsub,0.01,0.01,0.1 !Definition von Substeps
!Deaktivieren von Fehlermeldungen - [DEBUGGING]
pivcheck,warn
NCNV,2,10e+50
nlgeom,on
solcontrol,on
antype,static
!Aufbau des Models (ohne Last - Sicherstellen von vernetztem Model für Konvergenz)
time,1
solve
!Vorspannen der Seile
time,2
sload,8,PL01,lock,forc,P1,2,3
sload,9,PL01,lock,forc,P1,2,3
sload,10,PL01,lock,forc,P2,2,3
sload,11,PL01,lock,forc,P2,2,3
sload,12,PL01,lock,forc,P3,2,3
sload,13,PL01,lock,forc,P3,2,3
solve
!Auftragen der eigentlichen Last
time,3
!Belastung
nsel,s,loc,x,0,20
nsel,r,loc,y,0,0
esln,s,1
sfbeam,all,2,pres,qS,qS !Streckenlast,alle ausgewählten Nodes,-y Richtung,Streckenlast,Startwert,Endwert
esln,all
nsel,all
esel,s,ename,,beam188
esel,a,ename,,prets179
esel,a,ename,,link180
outres,all
solve
finish