Seismic analysis using HASE module

Hello,

I am trying to do a linear elastic seismic analysis in module ASE using a previously defined halfspace linear stiffness in module HASE. I am using extended pile function and somehow not able to solve the eigenvalues in ASE. Below I will paste the teddy input. I will be very grateful if you have an answer on this matter. Thanks in advance!

+PROG ASE urs:28.1 $ CALCULATION OF EIGENVALUES
HEAD Calculation Of Eigenvalues
ECHO EIGE YES
ECHO GRP FULL
CTRL OPT SOLV VAL -
CTRL MCON 3
LET#FACS 0.4
#INCLUDE ASE_GRP_SEISM
MASS 0
MASS -39
MASS -40
MASS -41
EIGE NEIG #NUMB_EIGE ETYP SIMU NITE - MITE - LC 8001
END

Hi,

if you want to use the external stiffness generated by HASE you have to add command STEX in ASE.

Best regards,

Nora

Hi,

Thank you for your answer. I did add the external stiffness by STEX command in module ASE but the module gave me error message with no explanation which doesn’t give me much options to troubleshoot.

Hi,

maybe you can upload your teddy file here?

Hi,

Just the ASE Teddy or all the connected ones?

This is exactly the error that I get:

*** Start: Program ASE : CALCULATION OF EIGENVALUES

SOFiSTiK 2022-10.0.1197 ASE - ADVANCED SOLUTION ENGINE
Output on file V87_SOF22_v4.plb
Project data base V87_SOF22_v4.cdb - 16. access

Parameter of System of Equation 3
(Sparse Direct Solver)
Number of unknowns 35198
Eigenwertblockung mit maximal 30 Vektoren
forrtl: severe (157): Program Exception - access violation
Image PC Routine Line Source
ase.exe 00007FF7027DD938 DSOL_GETMX 220 dsol_get.f90
ase.exe 00007FF702772654 DSOL_ADD_MOD_mp_D 325 dsol_ads.f90
ase.exe 00007FF70232090D THALBEIGE 930 tlager2.f90
ase.exe 00007FF702201873 ROOT 122 ase.f90
ase.exe 00007FF702B775A9 Unknown Unknown Unknown
ase.exe 00007FF702B5569B MAIN__ 87 fmain.for
ase.exe 00007FF702B54D3E Unknown Unknown Unknown
ase.exe 00007FF702B661E0 Unknown Unknown Unknown
KERNEL32.DLL 00007FF829F726AD Unknown Unknown Unknown
ntdll.dll 00007FF82BCEAA68 Unknown Unknown Unknown

*** Stop : Program ASE : CALCULATION OF EIGENVALUES
*** Process canceled, error detected!

Hi,

I need the whole input (AQUA, sofimshc, HASE etc.) to investigate this issue. You can simply upload the teddy-file.

Hi,

Sorry but it seems that as a new user I can’t upload files so I will copy the whole input in a separate post or posts

+PROG TEMPLATE urs:18.1
HEAD Parameters

!*! MODEL VERSIONS

$ V1 - MODIFIED T-BEAM PHILOSOPHY WITH EXCENTRIC BEAMS ; 4 PILES PER PIER
$ V2 - AS V1 WITH 6 PILES PER PIER
$ V3 - AS V2 WITH PILE CAP. CORRECTED ASE MODULE FOR LC 11 & 12
$ V4 - AS V3. HASE MODULE WITH EXTENDED PILES USED

!*! CARRIAGEWAY GEOMETRY
STO#L_W 1.25
STO#A_W 11.00
STO#R_W 1.61

!*! SUPERSTRUCTURE GEOMETRY
DEL#SPAN_L
STO#SPAN_L 25.25,30.90,30.90,30.90,25.25 $ Span lenghts
STO#BEAM_NUM 4
STO#BEAM_SPA 3.85
LET#SN 0 ; LOOP#I DEF(SPAN_L) ; STO#SN #SN+1 ; ENDLOOP ; PRT#SN $ Span number (calculated automatically)

STO#SLAB_W #L_W+#A_W+#R_W
STO#SLAB_LE 1.20 $ Left edge distance from the leftmost beam axis
STO#SLAB_RE #SLAB_W-#SLAB_LE-#BEAM_SPA*(#BEAM_NUM-1)
STO#SLAB_T 0.27 $ Minumum slab thickness
STO#ADD_T 0.06 $ Additional slab thicknes at support
STO#SUPER_H 1.85+#SLAB_T $ Superstructure overall height

STO#CB_L 13.35 $ Cross beam length
STO#CB_W 1.90
STO#CB_H1 0.70 $ Height of stage 1
STO#CB_H2 2.03 $ Height of stage 2
STO#CB_H #CB_H1+#CB_H2+#SLAB_T $ Averall height
STO#CB_SEC 20

STO#AD_L #CB_L $ Abutment diaphragm length < #SLAB_W !
STO#AD_W 0.80
STO#AD_H 2.35-#SLAB_T $ Height without slab
STO#AD_SEC 31

!*! PIER GEOMETRY
STO#COL_NUM 2
STO#COL_SPA 7.70
DEL#COL_H
$ P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 |
STO#COL_H 12.50, 15.00, 12.00, 11.00
STO#COL_L 1.25 $ Longitudinally
STO#COL_W 2.50 $ Transversally
STO#COL_SEC 40

!*! FOUNDATION GEOMETRY
$ AT PIERS
$ AT PIERS
STO#PC_H 1.80 $ Pile cap height
STO#PC_W 6.80 $ Pile cap width
STO#PC_L 11.30 $ Pile cap length

STO#PILE_N_L 2 $ Pile number in longitudinal direction per pier (sum of piles = #PILE_N_L*#PILE_N_T = MAX 30)
STO#PILE_SP_L 4.50 $ Pile spacing in longitudinal direction
STO#PILE_N_T 3 $ Pile number in transverse direction per pier (sum of piles = #PILE_N_L*#PILE_N_T = MAX 30)
STO#PILE_SP_T 4.50 $ Pile spacing in transverse direction
DEL#PILE_L
$ P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 |
STO#PILE_L 25.00, 25.00, 25.00, 25.00, 25.00, 25.00
STO#PILE_D 1.50 $ Pile diameter
STO#PILE_SEC 70

$ AT ABUTMENTS
STO#A_CB_H 0.90 $ Abutment cross beam height
STO#A_CB_W 2.90 $ Abutment cross beam width
STO#A_CB_E -0.35 $ Excentricity along X (+/-)
STO#ACB_SEC 32

STO#A_PILE_N 3 $ Pile number in transverse direction per pier
STO#A_PILE_SP 4.50 $ Pile spacing in transverse direction
DEL#A_PILE_L
STO#A_PILE_L 28.00, 28.00

!*! BEARINGS
STO#BE_H 0.45 $ Sum of heights of bearing and bearing plinth in meters

$ AT ABUTMENTS - HORIZONTAL STIFFNESS
$ A1 | A2
STO#A1X 0.90450600/72 ; STO#A2X #A1X
STO#A1Y #A1X ; STO#A2Y #A1Y

$ AT PIERS (IF ANY) - FOR P1 PUT #P1X,#P1Y, FOR P3 PUT #P3X,#P3X, FOR P8 PUT #P8X,#P8X, OTHERWISE PUT 0 OR NEGATIVE VALUE
$ HORIZONTAL STIFFNESS
$ P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9
STO#P1X 0 ; STO#P2X 0 ; STO#P3X 0 ; STO#P4X 0 ; STO#P5X 0 ; STO#P6X 0 ; STO#P7X 0 ; STO#P8X 0 ; STO#P9X 0
STO#P1Y #P1X ; STO#P2Y #P2X ; STO#P3Y #P3X ; STO#P4Y #P4X ; STO#P5Y #P5X ; STO#P6Y #P6X ; STO#P7Y #P7X ; STO#P8Y #P8X ; STO#P9Y #P9X

!! EFFECTIVE WIDTHS
LET#L 0 ; LOOP#I DEF(SPAN_L) ; IF #SPAN_L(#I)>#L ; LET#L #SPAN_L(#I) ; ELSE ; ENDIF ; ENDLOOP ; PRT#L
LET#L_BR 0 ; LOOP#I DEF(SPAN_L) ; STO#L_BR #L_BR+#SPAN_L(#I) ; ENDLOOP ; PRT#L_BR
DEL#SPAN_L_S
STO#SPAN_L_S(0) #SPAN_L(0) ; LOOP#I SPAN_L ; LET#J #I ; ENDLOOP ; LOOP#I #J ; STO#SPAN_L_S(#I+1) #SPAN_L_S(#I)+#SPAN_L(#I+1) ; ENDLOOP ; PRT#SPAN_L_S
STO#SUPP_L0 2
0.15*#L ; PRT#SUPP_L0
STO#SPAN_L0 0.70*#L ; PRT#SPAN_L0

END

+PROG AQUA urs:3 $ Materials
HEAD Materials
ECHO FULL EXTR

NORM EN 199X-200X-BRIDGE CAT B

CONC 1 C 45R
CONC 2 C 35
CONC 3 C 35 GAM 0 TITL ‘no weight’
CONC 4 C 30
STEE 5 Y 1860 REL1 2.5 REL2 ECL2
STEE 6 B 500
CONC 7 C 35 TITL ‘cb_st1’
CONC 8 C 35 TITL ‘cb_st2’
CONC 9 C 30 SCM 1.65 TITL ‘gamma_c=1.65’

END

+PROG AQUA urs:4.1
HEAD SECTIONS
PAGE UNII 0
ECHO FULL NO
ECHO SECT EXTR
ECHO PICT EXTR 1
ECHO REFP EXTR
CTRL REST 3
CTRL WARN 10467

LET#TW 0.20
#DEFINE MB
POLY OPZ MNO 1
VERT 1 0 0
2 0.90 0
3 0.90 0.080
4 0.17 0.130
5 #TW/2 0.260
6 #TW/2 1.535
7 0.35 1.660
8 0.35 1.850
9 0.00 1.850

SPT ‘7100’ Y 0 Z 1.85 MNO 1
SPT ‘7200’ Y 0 Z 0 MNO 1

RF Y=[M] Z=[M] AS=2.01 ASMA=4.91 LAY=M1 MRF=6 TORS=ADDI D=20 REFP=‘7100’
-0.285 -0.060
0.285 =
-0.285 -0.110
0.285 =

LRF YB ZB YE AS=-121.13 ASMA=-121.13 LAY=M2 MRF=6 TORS=ADDI D=12 A=-12 DIST=FULL REFA=‘7200’ REFE=‘7200’ $ UPPER FLANGE REINF.
-0.825 0.05 0.825

LRF YB ZB ZE AS=-101.13 ASMA=-101.13 LAY=M3 MRF=6 TORS=ACTI D=12 A=-10 DIST=FULL REFA=‘7100’ REFE=‘7100’
-0.035 -0.270 -1.620
0.035 = =
#ENDDEF

#DEFINE SLAB
POLY MNO 2
VERT 1 #B 0
2 #B -#SLAB_T
3 -#A -#SLAB_T
4 -#A 0
SPT ‘7400’ Y 0 Z -#SLAB_T MNO 2
#ENDDEF

#DEFINE SLAB_REINF
LET#S 0.15 $ Spacing
LET#W #A+#B ; IF MOD(#W/#S)>=0.5 ; LET#N DIV(#W/#S)+1 ; ELSE ; LET#N DIV(#W/#S) ; ENDIF ; PRT#N
LRF YB ZB YE LAY AS ASMA D MRF=6 TORS=ADDI A=#S[M] DIST=EVEN
-#A -0.055 #B M4 -#N3.14#D_L^2/400 -#N2.01 #D_L
= -(#SLAB_T-0.055) = M5 -#N
3.14*#D_U^2/400 -#N*8.04 #D_U
#ENDDEF

#DEFINE EFF_WIDTH
LET#B_EFF_1 MIN(0.2*#B1+0.1*#L0,0.2*#L0) $#A SIDE
LET#B_EFF_2 MIN(0.2*#B2+0.1*#L0,0.2*#L0) $#B SIDE
PRT#B_EFF_1
PRT#B_EFF_2
LET#B_EFF #B_EFF_1+#B_EFF_2+#TW
PRT#B_EFF

IF #B1 < #B_EFF_1
NEFF NZV-R -#A -#SLAB_T -#A+0.001 #SLAB_T
ELSE
NEFF NZV-R -#A -#SLAB_T -#B_EFF_1-#TW/2 #SLAB_T
ENDIF
IF #B2 < #B_EFF_2
NEFF NZV-R #B-0.001 -#SLAB_T*2 #B #SLAB_T
ELSE
NEFF NZV-R #B_EFF_2+#TW/2 -#SLAB_T #B #SLAB_T
ENDIF
#ENDDEF

#DEFINE SHEAR_CUT
CUT 1 ZB S LAY 1 TYPE WEB ASUP 11.30 $ 2B12/0.20
CUT 2 ZB 0 LAY 2 TYPE EVEN CINT 0.35*(2.2/2.7) MUE 0.6*(2.2/2.7) ASUP 22.6 $ (2B12+2B12)/0.20
CUT ZB ZE MNO ASUP NO=‘P1’ YB=#TW/2 LAY=3 TYPE=FLAN
0 -#SLAB_T 2 15.07 $ 2B12/0.15
#SLAB_T 0 1 3.95 $ 1B10/0.20
CUT ZB ZE MNO ASUP NO=‘P2’ YB=-#TW/2 LAY=3 TYPE=FLAN
-#SLAB_T 0 2 15.07 $ 2B12/0.15
0 #SLAB_T 1 3.95 $ 1B10/0.20
#ENDDEF

!*! Main beam span section - left edge
SECT 1 MNO 1 MRF 6 FSYM YES TITL “MB_SP_L” $ Span section
CS 10
#INCLUDE MB
CS 16
LET#A #SLAB_LE
LET#B #BEAM_SPA/2
#INCLUDE SLAB
LET#B1 #A-#TW/2
LET#B2 #B-#TW/2
LET#L0 #SPAN_L0
#INCLUDE EFF_WIDTH
LET#D_L 12 ; LET#D_U 20 $ Diameter of slab reinforcement in mm, L - lower, U - upper
#INCLUDE SLAB_REINF
#INCLUDE SHEAR_CUT

!*! Main beam span section - right edge
SECT 3 MNO 1 MRF 6 FSYM YES TITL “MB_SP_R” $ Span section
CS 10
#INCLUDE MB
CS 16
LET#A #BEAM_SPA/2
LET#B #SLAB_RE
#INCLUDE SLAB
LET#B1 #A-#TW/2
LET#B2 #B-#TW/2
#INCLUDE EFF_WIDTH
#INCLUDE SLAB_REINF
#INCLUDE SHEAR_CUT

!*! Main beam span section - inner
IF #BEAM_NUM>2
SECT 2 MNO 1 MRF 6 FSYM YES TITL “MB_SP_M” $ Span section
CS 10
#INCLUDE MB
CS 16
LET#A #BEAM_SPA/2
LET#B #A
#INCLUDE SLAB
LET#B1 #A-#TW/2
LET#B2 #B-#TW/2
#INCLUDE EFF_WIDTH
#INCLUDE SLAB_REINF
#INCLUDE SHEAR_CUT
ELSE
ENDIF

!*! Main beam support section - left
SECT 11 MNO 1 MRF 6 FSYM YES TITL “MB_SU_L” $ Support section
CS 10
#INCLUDE MB
CS 16
LET#A #SLAB_LE
LET#B #BEAM_SPA/2
#INCLUDE SLAB
LET#B1 #A-#TW/2
LET#B2 #B-#TW/2
LET#L0 #SUPP_L0
#INCLUDE EFF_WIDTH
LET#D_L 16 ; LET#D_U 25 $ Diameter of slab reinforcement in mm, L - lower, U - upper
#INCLUDE SLAB_REINF
#INCLUDE SHEAR_CUT

!*! Main beam support section - right
SECT 13 MNO 1 MRF 6 FSYM YES TITL “MB_SU_R” $ Support section
CS 10
#INCLUDE MB
CS 16
LET#A #BEAM_SPA/2
LET#B #SLAB_RE
#INCLUDE SLAB
LET#B1 #A-#TW/2
LET#B2 #B-#TW/2
#INCLUDE EFF_WIDTH
#INCLUDE SLAB_REINF
#INCLUDE SHEAR_CUT

!*! Main beam support section - inner
IF #BEAM_NUM>2
SECT 12 MNO 1 MRF 6 FSYM YES TITL “MB_SU_M” $ Support section
CS 10
#INCLUDE MB
CS 16
LET#A #BEAM_SPA/2
LET#B #A
#INCLUDE SLAB
LET#B1 #A-#TW/2
LET#B2 #B-#TW/2
#INCLUDE EFF_WIDTH
#INCLUDE SLAB_REINF
#INCLUDE SHEAR_CUT
ELSE
ENDIF

!*! Cross beam section
SECT #CB_SEC MNO 7 MRF 6 FSYM YES TITL “Cross beam”

CS 14

LET#C1 (40+16+32/2)/1000
LET#C2 (40+16+20/2)/1000
LET#C3 (40+16+32/2)/1000
LET#ZM #CB_H2

LET#BMAX1 MAX(2*#C3,#CB_H1*#CB_W/(2*(#CB_H1+#CB_W))) ; PRT#BMAX1
SV AK (#CB_H1-#BMAX1)*(#CB_W-#BMAX1)
POLY REC+ DY #CB_W DZ #CB_H1 ZM #ZM MNO 7

LET#S 0.12 $ Spacing
LET#W #CB_W-2*#C3 ; IF MOD(#W/#S)>=0.5 ; LET#N DIV(#W/#S)+1 ; ELSE ; LET#N DIV(#W/#S) ; ENDIF ; PRT#N
LRF YB ZB YE AS=-#N3.14 ASMA=-#N8.04 LAY=M1 MRF=6 TORS=ACTI D=32 A=-#N DIST=FULL
-(#CB_W/2-#C3) #ZM+#CB_H1-#C1 #CB_W/2-#C3

LRF YB ZB YE AS=-#N3.14 ASMA=-#N8.04 LAY=M2 MRF=6 TORS=PASS D=32 A=-#N DIST=FULL
-(#CB_W/2-#C3) #ZM+#C2 #CB_W/2-#C3

LET#N 1
LRF ZB ZE YB AS=-#N3.14 ASMA=-#N8.04 LAY=M3 MRF=6 TORS=ACTI D=32 A=-#N DIST=INS
#ZM+#CB_H1-#C1 #ZM+#C2 -(#CB_W/2-#C3)
= = #CB_W/2-#C3

CS 16

LET#C4 (30+16+20/2)/1000
LET#ZM 0

LET#BMAX2 MAX(2*#C3,(#CB_H1+#CB_H2)#CB_W/(2(#CB_H1+#CB_H2+#CB_W))) ; PRT#BMAX2
SV AK (#CB_H1+#CB_H2-#BMAX2)*(#CB_W-#BMAX2)
POLY REC+ DY #CB_W DZ #CB_H2 ZM #ZM MNO 8

LET#S 0.12 $ Spacing
LET#W #CB_W-2*#C3 ; IF MOD(#W/#S)>=0.5 ; LET#N DIV(#W/#S)+1 ; ELSE ; LET#N DIV(#W/#S) ; ENDIF ; PRT#N
LRF YB ZB YE AS=-#N2.01 ASMA=-#N3.14 LAY=M4 MRF=6 TORS=PASS D=20 A=-#N DIST=FULL
-(#CB_W/2-#C3) #ZM+#C4 #CB_W/2-#C3

LET#N 4
LRF ZB ZE YB AS=-#N3.14 ASMA=-#N8.04 LAY=M3 MRF=6 TORS=ACTI D=32 A=-#N DIST=INS
#ZM+#CB_H2+#C2 #ZM+#C4 -(#CB_W/2-#C3)
= = #CB_W/2-#C3

CS 18

LET#C5 (35+12+25+25/2)/1000
LET#ZM -#SLAB_T
LET#L0 0.70*#COL_SPA
LET#CB_W3 #CB_W+20.2#L0
LET#L0 0.150*((#CB_L-#COL_SPA)/2+#COL_SPA)
LET#CB_W3 #CB_W+20.2#L0

LET#BMAX3 MAX(2*#C3,#CB_H*#CB_W/(2*(#CB_H+#CB_W))) ; PRT#BMAX3
SV AK (#CB_H-#BMAX3)*(#CB_W-#BMAX3)
POLY REC+ DY #CB_W3 DZ #SLAB_T ZM #ZM MNO 2

LET#S 0.15 $ Spacing
LET#W #CB_W3 ; IF MOD(#W/#S)>=0.5 ; LET#N DIV(#W/#S)+1 ; ELSE ; LET#N DIV(#W/#S) ; ENDIF ; PRT#N
LRF YB ZB YE AS=-#N3.14 ASMA=-#N4.91 LAY=M5 MRF=6 TORS=ACTI D=25 A=-#N DIST=FULL
-(#CB_W3/2-#C3) #ZM+#C5 #CB_W3/2-#C3

LET#N 1
LRF YB ZB ZE AS=-#N3.14 ASMA=-#N8.0 LAY=M3 MRF=6 TORS=ACTI D=32 A=-#N DIST=INS
-(#CB_W/2-#C3) #ZM+#C5 #C4
#CB_W/2-#C3 = =

$CUT ‘st1’ ZB #ZM+#CB_H1/2 LAY 1 MNO 7 TYPE WEB ASUP 30.13 BMAX #BMAX1[M] $ 4B12/0.15
$CUT ‘st2’ ZB #ZM+(#CB_H2+#CB_H1)/2 LAY 2 MNO 8 TYPE WEB ASUP 30.13 BMAX #BMAX2[M] $ 4B12/0.15
CUT ‘st3’ ZB #ZM+#CB_H/2 LAY 3 MNO 8 TYPE WEB ASUP 53.60 BMAX #BMAX3[M] $ 4B16/0.15

!*! Abutment diaphragm section
SECT #AD_SEC MNO 2 MRF 6 FSYM YES TITL “Abutment diaphragm”

LET#C4 (30+16+20/2)/1000
LET#YM #AD_W/2
LET#ZM 0

POLY REC+ DY #AD_W DZ #AD_H YM #YM ZM #ZM
LRF YB ZB YE AS=-8*2.01 LAY=M4 MRF=6 TORS=PASS D=20 A=-8 DIST=FULL
#YM-(#AD_W/2-#C1) #ZM+#C4 #YM+#AD_W/2-#C1

!*! Abutment cross beam secton
SREC NO #ACB_SEC MNO 2 MRF 6 H #A_CB_H B #A_CB_W SO 80[MM] RTYP ASYM DASO 20[MM] A 150[MM] YM #A_CB_E ZM -#A_CB_H/2 TITL “Abutment cross beam”
$SVAL -#ACB_SEC IY 17

!*! Column section
LET#O1 80/1000 $ Outer reinforcement offset [mm]

SECT 40 MNO 2 MRF 6 BTYP COLU TITL “Column”
POLY RECT DY #COL_L DZ #COL_W

LET#YB #COL_L/2-#O1
LET#ZB #COL_W/2-#O1

LRF YB ZB YE ZE LAY=M1 TORS=ACTI D=32[MM] A=16[-] AS=-50.24 DIST=FULL $ASMA=-238.64
-#YB #ZB -#YB -#ZB
#YB #ZB #YB -#ZB

LRF YB ZB YE ZE LAY=M2 TORS=ACTI D=32[MM] A=6[-] AS=-18.84 ASMA=-48.24 DIST=INS
-#YB #ZB #YB #ZB
-#YB -#ZB #YB -#ZB

CUT SY ZB S LAY 1 ASUP 15.07 $ 2B12/0.15
CUT SZ YB S LAY 2 ASUP 60.27 $ 8B12/0.15

!*! Pile sections
IF #PILE_D==1.50 ; LET#A 180 ; ELSE ; LET#A 160 ; ENDIF
SCIT NO #PILE_SEC D (#PILE_D-0.05)[M] SA 121[MM] A #A[MM] DAS 20 MNO 9 MRF 6 TITL “Pile”
$ SA = C(=90) + D_NOM_B12 + D_NOM_B32

END

+PROG SOFIMSHA urs:14.3
HEAD Model
CTRL NODE 2000
SYST SPAC GDIV 10000 POSZ

NODE 100 0 0 0 $ Central node at abutment 1
LOOP#I SPAN_L
NODE NO X Y NR1
100+(#I+1)*100 #SPAN_L(#I) 0 100+(#I)*100
ENDLOOP

#DEFINE POINT_SECTION
LOOP#K #BEAM_NUM
NODE NO #NODE(#I)+#DNODE(#J)+(#K+1) X #DX(#J) Y -(#BEAM_NUM-1)#BEAM_SPA/2+#BEAM_SPA#K Z #DZ NR1 #NODE(#I)
ENDLOOP
#ENDDEF

LET#D1 0.5 ; LET#D2 0.7 ; LET#D3 #CB_W/2 ; LET#D4 #SUPP_L0/2

LOOP#I SPAN_L ; IF #I==0 ; ENDIF ; LET#NODE(#I-1) 100+(#I)*100 ; ENDLOOP
PRT#NODE
LET#DNODE 10, 20, 30, 40, 50, 60, 70, 80, 90
LET#DX 0.00,-#D1, #D1,-#D2, #D2,-#D3, #D3,-#D4, #D4
LET#DZ 0.00

LOOP#I NODE
LOOP#J DNODE
#INCLUDE POINT_SECTION
ENDLOOP
ENDLOOP
DEL#NODE ; DEL#DNODE ; DEL#DX

LET#D5 0.45

LET#NODE 100
LET#DNODE 10, 20
LET#DX 0.00,-#D5

LOOP#I NODE
LOOP#J DNODE
#INCLUDE POINT_SECTION
ENDLOOP
ENDLOOP
DEL#NODE ; DEL#DNODE ; DEL#DX

LET#NODE 100*(1+#SN)
LET#DNODE 10, 30
LET#DX 0.00, #D5

LOOP#I NODE
LOOP#J DNODE
#INCLUDE POINT_SECTION
ENDLOOP
ENDLOOP
DEL#NODE ; DEL#DNODE ; DEL#DX

!*! MAIN BEAMS

GRP 1 TITL ‘Main beams (MB)’
BEAM PROP NP -1
LET#L_E 1.0 $ MAXIMUM FINITE ELEMENT SIDE IN METERS

LET#A1 MOD((#SPAN_L(0)-#D4)/#L_E) ; LET#A2 DIV((#SPAN_L(0)-#D4)/#L_E) ; LET#A3 IIF(#A1,#A2+1,#A2)
LET#B1 MOD((#D4-#D3)/#L_E) ; LET#B2 DIV((#D4-#D3)/#L_E) ; LET#B3 IIF(#B1,#B2+1,#B2)

LOOP#I #BEAM_NUM
NODE NO MESH X 100+10+(#I+1) Y 200+80+(#I+1) DIV IIF(MOD(#A3/2),#A3+1,#A3)
NODE NO MESH X 200+80+(#I+1) Y 200+60+(#I+1) DIV IIF(MOD(#B3/2),#B3,#B3+1)
IF #I==0 ; LET#NCSSP 1 ; LET#NCSSU 11 ; ELSEIF #I==(#BEAM_NUM-1) ; LET#NCSSP 3 ; LET#NCSSU 13 ; ELSE ; LET#NCSSP 2 ; LET#NCSSU 12 ; ENDIF
BEAM NO FITL NA 100+20+(#I+1) NE 200+80+(#I+1) NCS #NCSSP
NO FITL NA 200+80+(#I+1) NE 200+20+(#I+1) NCS #NCSSP.#NCSSU
EDGE 20+(#I+1) TYPE FITL N1 100+10+(#I+1) N2 200+20+(#I+1)
ENDLOOP

IF #SN>2
LOOP#H #SN-2
LET#A1 MOD((#SPAN_L(#H+1)-#D4)/#L_E) ; LET#A2 DIV((#SPAN_L(#H+1)-#D4)/#L_E) ; LET#A3 IIF(#A1,#A2+1,#A2)
LET#B1 MOD((#D4-#D3)/#L_E) ; LET#B2 DIV((#D4-#D3)/#L_E) ; LET#B3 IIF(#B1,#B2+1,#B2)
LOOP#I #BEAM_NUM
NODE NO MESH X 100*(#H+2)+70+(#I+1) Y 100*(#H+2)+90+(#I+1) DIV IIF(MOD(#B3/2),#B3+1,#B3)
NODE NO MESH X 100*(#H+2)+90+(#I+1) Y 100*(#H+3)+80+(#I+1) DIV IIF(MOD(#A3/2),#A3+1,#A3)
NODE NO MESH X 100*(#H+3)+80+(#I+1) Y 100*(#H+3)+60+(#I+1) DIV IIF(MOD(#B3/2),#B3+1,#B3)
IF #I==0 ; LET#NCSSP 1 ; LET#NCSSU 11 ; ELSEIF #I==(#BEAM_NUM-1) ; LET#NCSSP 3 ; LET#NCSSU 13 ; ELSE ; LET#NCSSP 2 ; LET#NCSSU 12 ; ENDIF
BEAM NO FITL NA 100*(#H+2)+30+(#I+1) NE 100*(#H+2)+90+(#I+1) NCS #NCSSU.#NCSSP
NO FITL NA 100*(#H+2)+90+(#I+1) NE 100*(#H+3)+80+(#I+1) NCS #NCSSP
NO FITL NA 100*(#H+3)+80+(#I+1) NE 100*(#H+3)+20+(#I+1) NCS #NCSSP.#NCSSU
EDGE 10*(#H+3)+(#I+1) TYPE FITL N1 100*(#H+2)+30+(#I+1) N2 100*(#H+3)+20+(#I+1)
ENDLOOP
ENDLOOP
ELSE
ENDIF

LET#B1 MOD((#SPAN_L(#SN-1)-#D4)/#L_E) ; LET#B2 DIV((#SPAN_L(#SN-1)-#D4)/#L_E) ; LET#B3 IIF(#B1,#B2+1,#B2)
LET#A1 MOD((#D4-#D3)/#L_E) ; LET#A2 DIV((#D4-#D3)/#L_E) ; LET#A3 IIF(#A1,#A2+1,#A2)

LOOP#I #BEAM_NUM
NODE NO MESH X 100*#SN+70+(#I+1) Y 100*#SN+90+(#I+1) DIV IIF(MOD(#A3/2),#A3,#A3+1)
NODE NO MESH X 100*#SN+90+(#I+1) Y 100*(#SN+1)+10+(#I+1) DIV IIF(MOD(#B3/2),#B3+1,#B3)
IF #I==0 ; LET#NCSSP 1 ; LET#NCSSU 11 ; ELSEIF #I==(#BEAM_NUM-1) ; LET#NCSSP 3 ; LET#NCSSU 13 ; ELSE ; LET#NCSSP 2 ; LET#NCSSU 12 ; ENDIF
BEAM NO FITL NA 100*#SN+30+(#I+1) NE 100*#SN+90+(#I+1) NCS #NCSSU.#NCSSP
NO FITL NA 100*#SN+90+(#I+1) NE 100*(#SN+1)+30+(#I+1) NCS #NCSSP
EDGE 10*(#SN+1)+(#I+1) TYPE FITL N1 100*#SN+30+(#I+1) N2 100*(#SN+1)+10+(#I+1)
ENDLOOP
GRP
BEAM PROP

!! MAIN BEAMS SECONDARY GROUP
$ FULL LENGTH
LOOP#I #SN
LOOP#K #BEAM_NUM
LET#L -(#BEAM_NUM-1)
#BEAM_SPA/2+#BEAM_SPA*#K
GRP ‘MB#(#K+1)#(#I+1)’ TITL ‘MB No#(#K+1) span No#(#I+1)’
IF #I==0 ; LET#M -#D5 ; LET#N #SPAN_L(#I)-#CB_W/2 ; LET#DL 0.25 ; ELSEIF #I==#SN-1 ; LET#N #L_BR-#SPAN_L(#I)+#CB_W/2 ; LET#M #L_BR+#D5 ; LET#DL 0.25 ; ELSE ; LET#M #SPAN_L_S(#I-1)+#CB_W/2 ; LET#N #SPAN_L_S(#I)-#CB_W/2 ; LET#DL 0.25 ; ENDIF
SBOX #M #L-#DL 0.00 $$
#N #L-#DL 0.00 $$
#N #L+#DL 0.00 $$
#M #L+#DL 0.00 T 0.1 OPT PAND
BEAM
GRP
ENDLOOP
ENDLOOP

$ SPAN SECTION
LET#F_SU 0.15
LOOP#I #SN
LOOP#K #BEAM_NUM
LET#L -(#BEAM_NUM-1)#BEAM_SPA/2+#BEAM_SPA#K
GRP ‘SP#(#K+1)#(#I+1)’ TITL ‘MB No#(#K+1) span No#(#I+1) (span section)’
IF #I==0 ; LET#M -#D5 ; LET#N #SPAN_L(#I)-#SPAN_L(#I)#F_SU ; LET#DL 0.25 ; ELSEIF #I==#SN-1 ; LET#N #L_BR-#SPAN_L(#I)(1-#F_SU) ; LET#M #L_BR+#D5 ; LET#DL 0.25
ELSE ; LET#M #SPAN_L_S(#I-1)+#SPAN_L(#I)#F_SU ; LET#N #SPAN_L_S(#I)-#SPAN_L(#I)#F_SU ; LET#DL 0.25 ; ENDIF
SBOX #M #L-#DL 0.00 $$
#N #L-#DL 0.00 $$
#N #L+#DL 0.00 $$
#M #L+#DL 0.00 T 0.1 OPT PAND
BEAM
GRP
ENDLOOP
ENDLOOP

$ SUPPORT SECTION
LOOP#I #SN
LOOP#K #BEAM_NUM
GRP ‘SU#(#K+1)#(#I+1)’ TITL ‘MB No#(#K+1) span No#(#I+1) (sup. section)’
BEAM ‘GRP’ ‘MB#(#K+1)#(#I+1)’
BEAM ‘!GRP’ ‘SP#(#K+1)#(#I+1)’
GRP
ENDLOOP
ENDLOOP

!*! COLUMNS

IF #SN>1
LET#H #COL_NUM
LOOP#I #SN-1
NODE NO (100*(#I+2)+3 1) Y (-#COL_SPA*(#COL_NUM-1)/2 #COL_SPA*(#COL_NUM-1)/2 #COL_SPA) NR1 100*(#I+2)
NODE NO (10*(#I+2)+3 1) Z #CB_H1+#CB_H2 NR1 (100*(#I+2)+3 100*(#I+2)+3+#H-1 1)
NODE NO (10*(#I+2)+3+#H 1) Z #COL_H(#I) NR1 (10*(#I+2)+3 10*(#I+2)+3+#H-1 1)
GRP 9 TITL ‘Pier columns’
NODE NO (10*(#I+2)+3 1) FIX KF NR1 (100*(#I+2)+3 100*(#I+2)+3+#H-1 1)
BEAM NO FIT NA (10*(#I+2)+3 10*(#I+2)+3+#H-1 1) NE (10*(#I+2)+3+#H 1) NCS #COL_SEC DIV #COL_H(#I)
ENDLOOP
ELSE
ENDIF
GRP

!*! CROSS BEAMS

LET#A1 MOD(0.5*(#CB_L-(#BEAM_NUM-1)#BEAM_SPA)/#L_E) ; LET#A2 DIV(0.5(#CB_L-(#BEAM_NUM-1)*#BEAM_SPA)/#L_E) ; LET#A3 IIF(#A1,#A2+1,#A2)
LET#B1 MOD(#BEAM_SPA/#L_E) ; LET#B2 DIV(#BEAM_SPA/#L_E) ; LET#B3 IIF(#B1,#B2+1,#B2)

IF #SN>1
LOOP#I #SN-1
NODE NO (100*(#I+2)+1 1) Y (-#CB_L/2 #CB_L/2 #CB_L) NR1 100*(#I+2)
LOOP#J #BEAM_NUM+1
IF #J==0
NODE NO MESH X 100*(#I+2)+1 Y 100*(#I+2)+10+1 DIV IIF(MOD(#A3/2),#A3+1,#A3)
ELSEIF #J==#BEAM_NUM
NODE NO MESH X 100*(#I+2)+10+#BEAM_NUM Y 100*(#I+2)+2 DIV IIF(MOD(#A3/2),#A3+1,#A3)
ELSE
NODE NO MESH X 100*(#I+2)+10+#J Y 100*(#I+2)+10+#J+1 DIV IIF(MOD(#B3/2),#B3+1,#B3)
ENDIF
ENDLOOP
GRP 4 TITL ‘Cross beams (CB)’
BEAM NO FITL NA 100*(#I+2)+1 NE 100*(#I+2)+2 NCS #CB_SEC NP -1
GRP 6 TITL ‘Continuity of MB over piers’
LOOP#J #BEAM_NUM
NODE 100*(#I+2)+60+(#J+1) FIX KF NR1 100*(#I+2)+10+(#J+1)
NODE 100*(#I+2)+70+(#J+1) FIX KF NR1 100*(#I+2)+10+(#J+1)
ENDLOOP
ENDLOOP
ELSE
ENDIF
GRP

!*! ABUTMENT DIAPHRAGMS

LET#A1 MOD(0.5*(#AD_L-(#BEAM_NUM-1)#BEAM_SPA)/#L_E) ; LET#A2 DIV(0.5(#AD_L-(#BEAM_NUM-1)*#BEAM_SPA)/#L_E) ; LET#A3 IIF(#A1,#A2+1,#A2)
LET#B1 MOD(#BEAM_SPA/#L_E) ; LET#B2 DIV(#BEAM_SPA/#L_E) ; LET#B3 IIF(#B1,#B2+1,#B2)

LET#DX -#D5,#D5
LET#DNODE 20,30

LOOP#H 2
IF #H==0 ; LET#I -1 ; ELSE ; LET#I #SN-1 ; ENDIF
NODE NO (100*(#I+2)+1 1) X #DX(#H) Y (-#AD_L/2 #AD_L/2 #AD_L) NR1 100*(#I+2)
LOOP#J #BEAM_NUM+1
IF #J==0
NODE NO MESH X 100*(#I+2)+1 Y 100*(#I+2)+#DNODE(#H)+1 DIV IIF(MOD(#A3/2),#A3+1,#A3)
ELSEIF #J==#BEAM_NUM
NODE NO MESH X 100*(#I+2)+#DNODE(#H)+#BEAM_NUM Y 100*(#I+2)+2 DIV IIF(MOD(#A3/2),#A3+1,#A3)
ELSE
NODE NO MESH X 100*(#I+2)+#DNODE(#H)+#J Y 100*(#I+2)+#DNODE(#H)+#J+1 DIV IIF(MOD(#B3/2),#B3+1,#B3)
ENDIF
ENDLOOP
GRP 7 TITL ‘Abutment diaphragms (AD)’
BEAM NO FITL NA 100*(#I+2)+1+(1-#H) NE 100*(#I+2)+2-(1-#H) NCS #AD_SEC NP -1
ENDLOOP
DEL#NODE ; DEL#DNODE ; DEL#DX
GRP

!*! SLAB

LET#NODE 100
LET#DNODE 20
LET#I 1
LET#J 1
NODE NO #J Y -#SLAB_LE NR1 #NODE+#DNODE+#I

LET#I #BEAM_NUM
NODE NO #J+1 Y #SLAB_RE NR1 #NODE+#DNODE+#I

LET#NODE 100*(1+#SN)
LET#DNODE 30
LET#I 1
LET#J 2*#SN+1
NODE NO #J Y -#SLAB_LE NR1 #NODE+#DNODE+#I

LET#I #BEAM_NUM
NODE NO #J+1 Y #SLAB_RE NR1 #NODE+#DNODE+#I

DEL#SLAB_LEN $ Left edge node of the slab
IF (#SN>1)&(#CB_L<>#SLAB_W)
LOOP#I #SN-1
LET#NODE 100+(#I+1)100
LET#DNODE 10
LET#J 1
STO#SLAB_LEN(#I+1) 2+(2
#I+1)
NODE NO #SLAB_LEN(#I+1) Y -#SLAB_LE NR1 #NODE+#DNODE+#J
LET#J #BEAM_NUM
NODE NO #SLAB_LEN(#I+1)+1 Y #SLAB_RE NR1 #NODE+#DNODE+#J
ENDLOOP
ELSEIF #SN>1
LOOP#I #SN-1
STO#SLAB_LEN(#I+1) 100+(#I+1)100+1
ENDLOOP
ELSE
ENDIF
STO#SLAB_LEN(0) 1 ; STO#SLAB_LEN(#SN) 2
#SN+1
PRT#SLAB_LEN

LOOP#I #SN
LET#J 0
TRAN TYPE EDGE FROM (#I+2)10+(#J+1) DY -#SLAB_LE
EDGE NO 1+#I
2 TYPE FITL N1 #SLAB_LEN(#I) N2 #SLAB_LEN(#I+1)
LET#J #BEAM_NUM-1
TRAN TYPE EDGE FROM (#I+2)10+(#J+1) DY #SLAB_RE
EDGE NO 2+#I
2 TYPE FITL N1 #SLAB_LEN(#I)+1 N2 #SLAB_LEN(#I+1)+1
ENDLOOP

LOOP#I #SN+1
EDGE NO 91+#I TYPE FITL N1 #SLAB_LEN(#I) N2 #SLAB_LEN(#I)+1
ENDLOOP

GRP 2 TITL ‘Slab’
QUAD PROP MNO 3 POSI BELO T #SLAB_T[M]
LOOP#I #SN
UMSH TYPE QUAD HMAX #L_E
UBND TYPE OUT SEL EDGE N1 (2*#I+1) 90+(#I+2) (2*#I+2) 90+(#I+1)
UBND TYPE CONS SEL EDGE N1 (10*(#I+2)+1 10*(#I+2)+#BEAM_NUM 1)
ENDLOOP
GRP

!*! BEARINGS

$ LOWER NODES OF BEARINGS
LET#NODE 100
LET#DNODE 40
LET#DX 0
LET#DZ #AD_H+#BE_H[M]

LOOP#I NODE
LOOP#J DNODE
#INCLUDE POINT_SECTION
ENDLOOP
ENDLOOP

LET#NODE 100*(1+#SN)

LOOP#I NODE
LOOP#J DNODE
#INCLUDE POINT_SECTION
ENDLOOP
ENDLOOP
DEL#NODE ; DEL#DNODE ; DEL#DX ; DEL#DZ

$ BEARING SPRINGS AT ABUTMENTS - FOR STIFFNESSES SEE “MODIFICATION OF THE MODEL”
LET#BS 1
GRP 8 TITL ‘Bearings’
LOOP#I 2
IF #I==0 ; LET#J 0 ; ELSE ; LET#J #SN ; ENDIF
LOOP#K #BEAM_NUM
LET#NE 100*(#J+1)+40+(#K+1)
$ LET#NE ‘-’
SPRI NO NA NE DX DY DZ CP
100*(#J+1)+10*(#K+1)+1 100*(#J+1)+10+(#K+1) #NE 1 0 0 #BS
100*(#J+1)+10*(#K+1)+2 100*(#J+1)+10+(#K+1) #NE 0 1 0 #BS
100*(#J+1)+10*(#K+1)+3 100*(#J+1)+10+(#K+1) #NE 0 0 1 1E7
ENDLOOP
ENDLOOP
GRP

!*! TEMPORARY MAIN BEAM SUPPORTS

GRP 3 TITL 'Temporary MB supports'
LOOP#I #SN
    LOOP#J #BEAM_NUM
        IF (#I==0)|(#SN==1)
            SPRI NA                                          DX  DY  DZ  CP  CM=1
                 100*(#I+1)+20+(#J+1),100*(#SN+1)+30+(#J+1)  1   0   0   1E1
                 100*(#I+1)+20+(#J+1),100*(#SN+1)+30+(#J+1)  0   1   0   1E1
                 100*(#I+1)+20+(#J+1),100*(#SN+1)+30+(#J+1)  0   0   1   1E7
        ELSEIF #I>0
            SPRI NA                                          DX  DY  DZ  CP  CM=1
                 100*(#I+1)+20+(#J+1),100*(#I+1)+30+(#J+1)   1   0   0   1E1
                 100*(#I+1)+20+(#J+1),100*(#I+1)+30+(#J+1)   0   1   0   1E1
                 100*(#I+1)+20+(#J+1),100*(#I+1)+30+(#J+1)   0   0   1   1E7
        ELSE
        ENDIF
    ENDLOOP
ENDLOOP
GRP

!*! MAIN BEAM SUPPORTS AT PIERS BEFORE FRAME EFFECT APPEARS

IF #SN>1
GRP 5 TITL ‘MB support at CB stage 1’
LOOP#I #SN-1
LOOP#J #BEAM_NUM
NODE 100*(#I+2)+40+(#J+1) FIX KP,KMX NR1 100*(#I+2)+10+(#J+1)
NODE 100*(#I+2)+50+(#J+1) FIX KP,KMX NR1 100*(#I+2)+10+(#J+1)
ENDLOOP
ENDLOOP
GRP
ELSE
ENDIF

!*! PILES AND PILE CAPS

LOOP#I #SN-1
NODE NO 100*(#I+2)+100*(#SN+1) Z #CB_H-#SLAB_T+#COL_H(#I) NR1 100*(#I+2)
NODE NO (100*(#I+2)+100*(#SN+1)+91 1) X -#PC_W/2 Y (-#PC_L/2 #PC_L/2 #PC_L) NR1 100*(#I+2)+100*(#SN+1)
NODE NO (100*(#I+2)+100*(#SN+1)+93 1) X #PC_W/2 Y (-#PC_L/2 #PC_L/2 #PC_L) NR1 100*(#I+2)+100*(#SN+1)
LOOP#J #PILE_N_L
NODE NO (100*(#I+2)+100*(#SN+1)+(#J*#PILE_N_T+1) 1) X -(#PILE_N_L-1)#PILE_SP_L/2+#PILE_SP_L#J Y (-(#PILE_N_T-1)#PILE_SP_T/2 (#PILE_N_T-1)#PILE_SP_T/2 #PILE_SP_T) NR1 100*(#I+2)+100*(#SN+1)
NODE NO (100*(#I+2)+100*(#SN+1)+(#J*#PILE_N_T+1)+30 100*(#I+2)+100*(#SN+1)+(#J+1)#PILE_N_T+30 1) Z #PILE_L(#I) NR1 (100(#I+2)+100*(#SN+1)+(#J*#PILE_N_T+1) 1)
GRP 11 TITL ‘Piles’
BEAM NO PROP AHIN MYMZ
BEAM NO FIT NA (100*(#I+2)+100*(#SN+1)+(#J*#PILE_N_T+1) 1) NE (100*(#I+2)+100*(#SN+1)+(#J*#PILE_N_T+1)+30 100*(#I+2)+100*(#SN+1)+(#J+1)#PILE_N_T+30 1) DIV #PILE_L(#I) NCS #PILE_SEC
BEAM NO PROP
ENDLOOP
GRP 10 TITL ‘Pile caps’
QUAD PROP MNO 4 POSI BELO T #PC_H[M]
UMSH TYPE QUAD HMAX #L_E
UBND TYPE OUT SEL NODE N1 100
(#I+2)+100*(#SN+1)+91 100*(#I+2)+100*(#SN+1)+92 100*(#I+2)+100*(#SN+1)+94 100*(#I+2)+100*(#SN+1)+93
UBND TYPE CONS SEL NODE N1 (100*(#I+2)+100*(#SN+1)+1 100*(#I+2)+100*(#SN+1)+#PILE_N_L*#PILE_N_T 1)
UBND TYPE CONS SEL NODE N1 (10*(#I+2)+3+#COL_NUM 10*(#I+2)+3+2*#COL_NUM-1 1)
ENDLOOP

!*! ABUTMENTS

LOOP#H 2
IF #H==0 ; LET#I 0 ; ELSE ; LET#I #SN ; ENDIF
LOOP#J #A_PILE_N
NODE NO 100*(#I+1)+51+#J Y -#A_PILE_SP*(#A_PILE_N-1)/2+#A_PILE_SP*#J Z #AD_H+#BE_H NR1 100*(#I+1)
NODE NO 100*(#I+1)+61+#J Z #A_PILE_L(#H) NR1 100*(#I+1)+51+#J
GRP 11 TITL ‘Piles’
BEAM NO PROP AHIN MY
BEAM NO FIT NA 100*(#I+1)+51+#J NE 100*(#I+1)+61+#J DIV #A_PILE_L(#H) NCS #PILE_SEC
ENDLOOP
NODE NO (100*(#I+1)+3 100*(#I+1)+4 1) Y (-#AD_L/2 #AD_L) Z #AD_H+#BE_H NR1 100*(#I+1)
GRP 10 TITL ‘Pile caps’
BEAM NO FITL NA 100*(#I+1)+3 NE 100*(#I+1)+4 NCS #ACB_SEC NP -1
ENDLOOP
GRP

!*! MODIFICATION OF THE MODEL

$ DEFINITION OF BEARING STIFFNESSES

LET#GRP 8
SPRI PROP CP #A1X
MOD TYPE SPRI FROM 10000*#GRP+100+10+1 TO 10000*#GRP+100+10*#BEAM_NUM+1 INC 10
SPRI PROP CP #A1Y
MOD TYPE SPRI FROM 10000*#GRP+100+10+2 TO 10000*#GRP+100+10*#BEAM_NUM+2 INC 10

SPRI PROP CP #A2X
MOD TYPE SPRI FROM 10000*#GRP+100*(#SN+1)+10+1 TO 10000*#GRP+100*(#SN+1)+10*#BEAM_NUM+1 INC 10
SPRI PROP CP #A2Y
MOD TYPE SPRI FROM 10000*#GRP+100*(#SN+1)+10+2 TO 10000*#GRP+100*(#SN+1)+10*#BEAM_NUM+2 INC 10

IF #SN>1
LOOP#I #SN-1
IF (#I==0)&(#P1X>0)
DEL TYPE KINE FROM 10*(#I+2)+3 TO 10*(#I+2)+3+#COL_NUM-1
LOOP#J #COL_NUM
GRP 8 TITL ‘Bearings’
SPRI NO NA NE DX DY DZ CP
100*(#I+2)+10*(#J+1)+1 100*(#I+2)+3+#J 10*(#I+2)+3+#J 1 0 0 #P1X
100*(#I+2)+10*(#J+1)+2 = = 0 1 0 #P1Y
100*(#I+2)+10*(#J+1)+3 = = 0 0 1 1E7
ENDLOOP
ELSEIF (#I==1)&(#P2X>0)
DEL TYPE KINE FROM 10*(#I+2)+3 TO 10*(#I+2)+3+#COL_NUM-1
LOOP#J #COL_NUM
GRP 8 TITL ‘Bearings’
SPRI NO NA NE DX DY DZ CP
100*(#I+2)+10*(#J+1)+1 100*(#I+2)+3+#J 10*(#I+2)+3+#J 1 0 0 #P2X
100*(#I+2)+10*(#J+1)+2 = = 0 1 0 #P2Y
100*(#I+2)+10*(#J+1)+3 = = 0 0 1 1E7
ENDLOOP
ELSEIF (#I==2)&(#P3X>0)
DEL TYPE KINE FROM 10*(#I+2)+3 TO 10*(#I+2)+3+#COL_NUM-1
LOOP#J #COL_NUM
GRP 8 TITL ‘Bearings’
SPRI NO NA NE DX DY DZ CP
100*(#I+2)+10*(#J+1)+1 100*(#I+2)+3+#J 10*(#I+2)+3+#J 1 0 0 #P3X
100*(#I+2)+10*(#J+1)+2 = = 0 1 0 #P3Y
100*(#I+2)+10*(#J+1)+3 = = 0 0 1 1E7
ENDLOOP
ELSEIF (#I==3)&(#P4X>0)
DEL TYPE KINE FROM 10*(#I+2)+3 TO 10*(#I+2)+3+#COL_NUM-1
LOOP#J #COL_NUM
GRP 8 TITL ‘Bearings’
SPRI NO NA NE DX DY DZ CP
100*(#I+2)+10*(#J+1)+1 100*(#I+2)+3+#J 10*(#I+2)+3+#J 1 0 0 #P4X
100*(#I+2)+10*(#J+1)+2 = = 0 1 0 #P4Y
100*(#I+2)+10*(#J+1)+3 = = 0 0 1 1E7
ENDLOOP
ELSEIF (#I==4)&(#P5X>0)
DEL TYPE KINE FROM 10*(#I+2)+3 TO 10*(#I+2)+3+#COL_NUM-1
LOOP#J #COL_NUM
GRP 8 TITL ‘Bearings’
SPRI NO NA NE DX DY DZ CP
100*(#I+2)+10*(#J+1)+1 100*(#I+2)+3+#J 10*(#I+2)+3+#J 1 0 0 #P5X
100*(#I+2)+10*(#J+1)+2 = = 0 1 0 #P5Y
100*(#I+2)+10*(#J+1)+3 = = 0 0 1 1E7
ENDLOOP
ELSEIF (#I==5)&(#P6X>0)
DEL TYPE KINE FROM 10*(#I+2)+3 TO 10*(#I+2)+3+#COL_NUM-1
LOOP#J #COL_NUM
GRP 8 TITL ‘Bearings’
SPRI NO NA NE DX DY DZ CP
100*(#I+2)+10*(#J+1)+1 100*(#I+2)+3+#J 10*(#I+2)+3+#J 1 0 0 #P6X
100*(#I+2)+10*(#J+1)+2 = = 0 1 0 #P6Y
100*(#I+2)+10*(#J+1)+3 = = 0 0 1 1E7
ENDLOOP
ELSEIF (#I==6)&(#P7X>0)
DEL TYPE KINE FROM 10*(#I+2)+3 TO 10*(#I+2)+3+#COL_NUM-1
LOOP#J #COL_NUM
GRP 8 TITL ‘Bearings’
SPRI NO NA NE DX DY DZ CP
100*(#I+2)+10*(#J+1)+1 100*(#I+2)+3+#J 10*(#I+2)+3+#J 1 0 0 #P7X
100*(#I+2)+10*(#J+1)+2 = = 0 1 0 #P7Y
100*(#I+2)+10*(#J+1)+3 = = 0 0 1 1E7
ENDLOOP
ELSEIF (#I==7)&(#P8X>0)
DEL TYPE KINE FROM 10*(#I+2)+3 TO 10*(#I+2)+3+#COL_NUM-1
LOOP#J #COL_NUM
GRP 8 TITL ‘Bearings’
SPRI NO NA NE DX DY DZ CP
100*(#I+2)+10*(#J+1)+1 100*(#I+2)+3+#J 10*(#I+2)+3+#J 1 0 0 #P8X
100*(#I+2)+10*(#J+1)+2 = = 0 1 0 #P8Y
100*(#I+2)+10*(#J+1)+3 = = 0 0 1 1E7
ENDLOOP
ELSEIF (#I==8)&(#P9X>0)
DEL TYPE KINE FROM 10*(#I+2)+3 TO 10*(#I+2)+3+#COL_NUM-1
LOOP#J #COL_NUM
GRP 8 TITL ‘Bearings’
SPRI NO NA NE DX DY DZ CP
100*(#I+2)+10*(#J+1)+1 100*(#I+2)+3+#J 10*(#I+2)+3+#J 1 0 0 #P9X
100*(#I+2)+10*(#J+1)+2 = = 0 1 0 #P9Y
100*(#I+2)+10*(#J+1)+3 = = 0 0 1 1E7
ENDLOOP
ELSE
ENDIF
ENDLOOP
ENDIF
GRP

END

+PROG SOFIMSHA urs:14.5
HEAD Result sets for bearings
SYST REST

#DEFINE RSET
RSET ‘B#(#K+1)#(#J+1)’ TITL ‘Support No #(#K+1), bearing No #(#J+1)’
RSET 'B#(#K+1)
#(#J+1)PZ’ SPRI_RES P NO 3+10*(#J+1)+100*(#K+1)+#GRP*10000
RSET 'B#(#K+1)
#(#J+1)UX’ SPRI_RES V NO 1+10*(#J+1)+100*(#K+1)+#GRP*10000
RSET 'B#(#K+1)
#(#J+1)UY’ SPRI_RES V NO 2+10*(#J+1)+100*(#K+1)+#GRP*10000
RSET 'B#(#K+1)
#(#J+1)RX’ SPRI_RES PHI NO 1+10*(#J+1)+100*(#K+1)+#GRP*10000
RSET 'B#(#K+1)
#(#J+1)_RY’ SPRI_RES PHI NO 2+10*(#J+1)+100*(#K+1)+#GRP*10000
#ENDDEF

RSET DEL

!*! AT ABUTMENTS
LET#GRP 8 $ Bearing group number
LOOP#I 2 $ Number of supports with bearings
IF #I==0 ; LET#K 0 ; ELSE ; LET#K #SN ; ENDIF
LOOP#J #BEAM_NUM $ Number of bearings per support
#INCLUDE RSET
ENDLOOP
ENDLOOP

!*! AT PIERS (IF ANY)
IF #SN>1
LOOP#I #SN-1
IF (#I==0)&(#P1X>0) ; LET#K 1
LOOP#J #COL_NUM
#INCLUDE RSET
ENDLOOP
ELSEIF (#I==1)&(#P2X>0) ; LET#K 2
LOOP#J #COL_NUM
#INCLUDE RSET
ENDLOOP
ELSEIF (#I==2)&(#P3X>0) ; LET#K 3
LOOP#J #COL_NUM
#INCLUDE RSET
ENDLOOP
ELSEIF (#I==3)&(#P4X>0) ; LET#K 4
LOOP#J #COL_NUM
#INCLUDE RSET
ENDLOOP
ELSEIF (#I==4)&(#P5X>0) ; LET#K 5
LOOP#J #COL_NUM
#INCLUDE RSET
ENDLOOP
ELSEIF (#I==5)&(#P6X>0) ; LET#K 6
LOOP#J #COL_NUM
#INCLUDE RSET
ENDLOOP
ELSEIF (#I==6)&(#P7X>0) ; LET#K 7
LOOP#J #COL_NUM
#INCLUDE RSET
ENDLOOP
ELSEIF (#I==7)&(#P8X>0) ; LET#K 8
LOOP#J #COL_NUM
#INCLUDE RSET
ENDLOOP
ELSEIF (#I==8)&(#P9X>0) ; LET#K 9
LOOP#J #COL_NUM
#INCLUDE RSET
ENDLOOP
ELSE
ENDIF
ENDLOOP
ENDIF

LET#BASE 90000
LET#BEAM_NO #BASE+13, #BASE+26, $$
#BASE+41, #BASE+56, $$
#BASE+68, #BASE+80, $$
#BASE+91, #BASE+102

LOOP#I #SN-1
RSET ‘F#(#I+1)’ TITL ‘Foundation at support No #(#I+1)’
LOOP#J #COL_NUM
RSET ‘N_C#(#J+1)F#(#I+1)’ BEAM_FOR N NO #BEAM_NO(2*#I+#J) X 0
RSET ‘VY_C#(#J+1)F#(#I+1)’ BEAM_FOR VY NO #BEAM_NO(2*#I+#J) X 0
RSET ‘MZ_C#(#J+1)F#(#I+1)’ BEAM_FOR MZ NO #BEAM_NO(2*#I+#J) X 0
RSET ‘VZ_C#(#J+1)F#(#I+1)’ BEAM_FOR VZ NO #BEAM_NO(2*#I+#J) X 0
RSET ‘MY_C#(#J+1)F#(#I+1)’ BEAM_FOR MY NO #BEAM_NO(2*#I+#J) X 0
ENDLOOP
ENDLOOP

END

-PROG AQUA urs:14.4
HEAD Interpolation of cross sections
CTRL WARN 10467
INTE 0
END

+PROG SOFILOAD urs:21.1
HEAD Loads
ACT G_1
ACT G_2 SUP ALEX
ACT T GAMU 1.5*0.6 PSI0 0.8 $ 60% STIFNESS IN ULS
ACT A
ACT E
ACT E_2
ACT Z GAMU 1.0 GAMF 0 PSI0 1 PSI1 1 PSI2 1 PART Q SUP USEX TITL “Second order effects”
ACT P
ACT L_T
ACT L_U
ACT ZL GAMU 1.35 GAMF 0 PSI0 0 PSI1 0 PSI2 0 PS1S 0 PART Q SUP EXCL TITL “Braking/Traction”
ACT C
ACT R
ACT F GAMU 1.2
ACT X GAMU 1.35 GAMF 0 PSI0 1 PSI1 1 PSI2 1 PART G SUP USEX TITL “Imperfections”
ACT W SUP EXEX
ACT W_1 SUP EXEX PSI0 1 PSI1 0 PSI2 0 PS1S 1 TITL “Wind incl. traffic”

LC (1 9999 1) TYPE DEL

$------------------------------------------------------------------------------ LAR FOR SLAB LOADING

LOOP#I #SN
LAR NO X1 Y1 X2 Y2 X3 Y3 X4 Y4
1+10*(#I+1) GPT #SLAB_LEN(#I) GPT #SLAB_LEN(#I+1) #COOR_X(#SLAB_LEN(#I+1)) #COOR_Y(#SLAB_LEN(#I+1))+#L_W #COOR_X(#SLAB_LEN(#I)) #COOR_Y(#SLAB_LEN(#I))+#L_W $LEFT WALKWAY AREA
2+10*(#I+1) #COOR_X(#SLAB_LEN(#I)) #COOR_Y(#SLAB_LEN(#I))+#L_W #COOR_X(#SLAB_LEN(#I+1)) #COOR_Y(#SLAB_LEN(#I+1))+#L_W #COOR_X(#SLAB_LEN(#I+1)) #COOR_Y(#SLAB_LEN(#I+1))+#L_W+#A_W #COOR_X(#SLAB_LEN(#I)) #COOR_Y(#SLAB_LEN(#I))+#L_W+#A_W $ASPHALT AREA
3+10*(#I+1) GPT #SLAB_LEN(#I)+1 GPT #SLAB_LEN(#I+1)+1 #COOR_X(#SLAB_LEN(#I+1)+1) #COOR_Y(#SLAB_LEN(#I+1)+1)-#R_W #COOR_X(#SLAB_LEN(#I)+1) #COOR_Y(#SLAB_LEN(#I)+1)-#R_W $RIGHT WALKWAY AREA
ENDLOOP

$------------------------------------------------------------------------------

LC 1 TYPE G_1 FACD 1 TITL “Self-weight”

$$ ADDITIONAL ABUTMENT SELF-WEIGHT
$BEAM PA EYA=[M] FROM=GRP TO=10
$ 2.500.6025 (#A_CB_W-0.6)0.5-#A_CB_E $GUARDBALLAST
$ 5.00
0.30250.5 (#A_CB_W-0.2)0.5-#A_CB_E $APPROACH SLAB
$ 5.00
1.00190.5 = $EMBANKMENT ABOVE THE APPROACH SLAB

LC 39 TYPE G_1 TITL “Add. slab self-weight”
LOOP#I #SN
LOOP#J #BEAM_NUM
IF #J==0 ; LET#W #SLAB_LE+#BEAM_SPA/2 ; ELSEIF #J==#BEAM_NUM-1 ; LET#W #SLAB_RE+#BEAM_SPA/2 ; ELSE ; LET#W #BEAM_SPA ; ENDIF
BEAM FROM GRP TO ‘MB#(#J+1)#(#I+1)’ TYPE PG PA #ADD_T*#W25
BEPL FROM GRP TO ‘MB#(#J+1)#(#I+1)’ TYPE PG P -#ADD_T
#W*25 OPT QUAM
ENDLOOP
ENDLOOP

$------------------------------------------------------------------------------

LC 2 GAMU 1.0 GAMF 1.0 TYPE G_2 TITL “Walkways”
AREA REF LAR NO (11 1+10*#SN 10) P1 0.3325 $LEFT WALKWAY = (A_WALKWAY)/#L_W)GAMMA_C
AREA REF LAR NO (13 3+10
#SN 10) P1 0.25
25 $RIGHT WALKWAY = (A_WALKWAY)/#R_W)*GAMMA_C

LC 3 GAMU 1.5 GAMF 0.8 TYPE G_2 TITL “Asphalt”
AREA REF LAR NO (12 2+10*#SN 10) P1 0.10*24

LC 4 GAMU 1.2 GAMF 0.8 TYPE G_2 TITL “Waterproofing”
AREA REF LAR NO (12 2+10*#SN 10) P1 0.01*24

LC 5 GAMU 1.05 GAMF 0.95 TYPE G_2 TITL “Barriers and handrails”
LINE REF EDG NO (1 1+2*#SN-2 2) P1 0.9 $LEFT BARRIER
LINE REF EDG NO (2 2+2*#SN-2 2) P1 0.9+0.35 $RIGHT BARRIER

LC 9 TYPE G_2 TITL “Non-str. self-weight (UNFAV)”
COPY 2,3,4,5 GAMU

LC 10 TYPE G_2 TITL “Non-str. self-weight (FAV)”
COPY 2,3,4,5 GAMF

$------------------------------------------------------------------------------

LC 11 TYPE T TITL “Pos. uniform temperature”
BEAM FROM GRP TO 1,4 TYPE DT PA 38.0
QUAD FROM GRP TO 2 TYPE DTXY P 38.0

LC 12 TYPE T TITL “Neg. uniform temperature”
BEAM FROM GRP TO 1,4 TYPE DT PA -30.5
QUAD FROM GRP TO 2 TYPE DTXY P -30.5

LC 13 TYPE T TITL “Pos. linear temperature”
BEAM FROM GRP TO 1 TYPE DTZ PA -15*0.7

LC 14 TYPE T TITL “Neg. linear temperature”
BEAM FROM GRP TO 1 TYPE DTZ PA 8*1.0

$ COMBINATION OF UNIFORM TEMPERATURE AND NON-LINEAR GRADIENT - APPROACH 2
LET#T_N 11,12
LET#T_M 13,14,13,14
LET#W_N 1.00,1.00,0.35,0.35
LET#W_M 0.75,0.75,1.00,1.00
LOOP#I 2
LOOP#J 4
LC NO 15+#J+4*#I TYPE T TITL “Temperature combination #(#(J)+1+4*#(I))”
COPY NO #T_N(#I) FACT #W_N(#J)
COPY NO #T_M(#J) FACT #W_M(#J)
ENDLOOP
ENDLOOP

LC 23 TYPE NONE TITL “Pos. uniform temperature (B&J)”
COPY 11
BEAM FROM GRP TO 1 TYPE DT PA 20

LC 24 TYPE NONE TITL “Neg. uniform temperature (B&J)”
COPY 12
BEAM FROM GRP TO 1 TYPE DT PA -20

$------------------------------------------------------------------------------

LET#L #L_BR
IF (360+2.7*#L<180)
LET#QLK 180
ELSEIF (360+2.7*#L>900)
LET#QLK 900
ELSE
LET#QLK 360+2.7*#L
ENDIF
PRT#QLK
PRT#L

LC NO 31 TYPE ZL TITL “Brake/Traction +X”
LINE TYPE PXX P1 #QLK/#L X1 0 Y1 0 X2 #L

LC NO 32 TYPE ZL TITL “Brake/Traction -X”
COPY 31 FACT -1

IF #L>=200
LC NO 33 TYPE ZL TITL “Brake/Traction +X”
LINE TYPE PXX P1 #QLK/200 X1 0 Y1 0 X2 200

LC NO 34 TYPE ZL TITL “Brake/Traction -X”
COPY 33 FACT -1

LC NO 35 TYPE ZL TITL “Brake/Traction +X”
LINE TYPE PXX P1 #QLK/200 X1 #L-200 Y1 0 X2 #L

LC NO 36 TYPE ZL TITL “Brake/Traction -X”
COPY 35 FACT -1

LC NO 37 TYPE ZL TITL “Brake/Traction +X”
LINE TYPE PXX P1 #QLK/200 X1 (#L-200)/2 Y1 0 X2 (#L+200)/2

LC NO 38 TYPE ZL TITL “Brake/Traction -X”
COPY 37 FACT -1

ELSE
ENDIF

$------------------------------------------------------------------------------

LC NO 40 TYPE NONE TITL “Nominal non-str. self-weight” $USED ONLY AS A MASS
COPY 2,3,4,5

LC NO 41 TYPE NONE TITL “Seizmic live load” $USED ONLY AS A MASS
LET#SLL 0.2*(3*9+(#A_W-3)2.5)/#A_W
PRT#SLL
AREA REF LAR NO (12 2+10
#SN 10) P1 #SLL $LOAD ON ASPHALT AREA

$------------------------------------------------------------------------------

$LET#SET 10 $EXPECTED SETTLEMENT IN MM
$LOOP#K #SN+1
$ IF (#K==0)|(#K==#SN)
$ LC NO 51+#K TYPE F TITL “Settlement of support #(#K+1)”
$ NODE NO (161+#K100 161+#K100+#A_PILE_N-1 1) TYPE WZZ P1 #SET
$ ELSE
$ LC NO 51+#K TYPE F TITL “Settlement of support #(#K)”
$ NODE NO (100*(#K+1)+100*(#SN+1)+31 100*(#K+1)+100*(#SN+1)+#PILE_N_L*#PILE_N_T+30 1) TYPE WZZ P1 #SET
$ ENDIF
$ENDLOOP

$ NOT USED HERE BECAUSE OF HASE

$------------------------------------------------------------------------------

$ WIND LOAD ON SUPERSTRUCTURE
LET#W 6.25 $WIND LOAD WITHOUT TRAFFIC IN KN/M
LC NO 71 TYPE W TITL “Wind load w/o traffic +Y”
LINE REF EDG NO (1 1+2*#SN-2 2) TYPE PYY P1 #W

LC NO 72 TYPE W TITL “Wind load w/o traffic -Y”
LINE REF EDG NO (2 2+2*#SN-2 2) TYPE PYY P1 -#W

LC NO 73 TYPE W TITL “Wind load w/o traffic +X”
LINE TYPE PXX P1 0.25*#W X1 0 Y1 0 X2 #L

LC NO 74 TYPE W TITL “Wind load w/o traffic -X”
COPY 73 FACT -1

LET#W 7.65 $WIND LOAD WITH TRAFFIC
LET#PSI0 0.6
LC NO 81 TYPE W_1 TITL “Wind load with traffic +Y”
LINE REF EDG NO (1 1+2*#SN-2 2) TYPE PYY P1 #PSI0*#W

LC NO 82 TYPE W_1 TITL “Wind load with traffic -Y”
LINE REF EDG NO (2 2+2*#SN-2 2) TYPE PYY P1 -#PSI0*#W

END

+PROG SOFILOAD urs:21.2
HEAD

LC 2,3,4,5 TYPE NONE

END

#DEFINE ASE_GRP
GRP ALL
GRP 3,5 OFF
GRP2 2 QUEA 1E-5
#ENDDEF

#DEFINE ASE_GRP_SEISM
GRP ALL
GRP 3,5 OFF
GRP 9 FACS #FACS
GRP2 2 QUEA 1E-5
#ENDDEF

#DEFINE DYNA_GRP_SEISM
GRP 3,5 OFF
#ENDDEF

#DEFINE ASE_HASE
SYST PROB LINE
STEX
#ENDDEF

+PROG HASE urs:22.8
HEAD Halfspace stiffness
ECHO FULL EXTR
$CTRL SOLV NONL $ may be quicker and more efficient on big systems
HALF TYPE COOR FAKX 1 1 1 Z #ZMIN ZVAR AUTO
BORE (1 #SN+1 1)
GRP 11
END

+PROG ASE urs:1
HEAD T-beam philosophy definition
ECHO FULL FULL

#INCLUDE ASE_HASE

TBEX NOG AUTO

END

+PROG ASE urs:22.1
HEAD Calculation of forces and moments
ECHO
CTRL OPT SOLV VAL -

#INCLUDE ASE_HASE
#INCLUDE ASE_GRP

LC ALL

END

+PROG ASE urs:32.3
HEAD Calculation of imperfections
ECHO FULL NO
ECHO DISP FULL

#INCLUDE ASE_HASE
#INCLUDE ASE_GRP
LC 100 DLZ 1.00 FACT 1.00 TITL ‘Buckling eigenvalue PLC’
LCC 40
END

+PROG ASE urs:22.7
HEAD
CTRL WARN 609
ECHO FULL EXTR

SYST PLC 100
CTRL DIFF 8000

#INCLUDE ASE_HASE
#INCLUDE ASE_GRP
OBLI SX 1/100
LC 501 TYPE X DLZ 1.00 FACT 1.00 TITL ‘Imperfections’
LCC 40
END

SYST PLC 100
CTRL DIFF 8000

#INCLUDE ASE_HASE
#INCLUDE ASE_GRP
OBLI SY 1/200
LC 502 TYPE X DLZ 1.00 FACT 1.00 TITL ‘Imperfections’
LCC 40
END

+PROG SOFILOAD urs:32.6
HEAD

LC (501 530 1) TYPE DEL

END

+PROG SOFILOAD urs:24.5
HEAD Definition of Response Spectra - type 1
HEAD acc. to BDS EN 1998-1:2005/NA:2012
LET#IMPORTANCE_FACT 1.4
LET#S 1.2
LET#A_GR 0.11*9.81
STO#Q_LONG 1.5
STO#Q_TRAN 1.5
STO#NUMB_EIGE 60

$ ELASTIC SPECTRA IS USED. COLUMN MOMENT REDUCTION BY Q IS DONE IN AQB
LC 990 TYPE NONE TITL “100% X”
RESP TYPE EC-1 CLAS C MOD - SA #S SB 2.5*#S SMIN 0.200 TB 0.100 TC 0.500 TD 2.000 TE 4.000 K1 1.000 K2 2.000 AG #IMPORTANCE_FACT*#A_GR AH 1
ACCE DIR AX 1 AY 0

LC 991 TYPE NONE TITL “100% Y”
RESP TYPE EC-1 CLAS C MOD - SA #S SB 2.5*#S SMIN 0.200 TB 0.100 TC 0.500 TD 2.000 TE 4.000 K1 1.000 K2 2.000 AG #IMPORTANCE_FACT*#A_GR AH 1
ACCE DIR AY 1 AX 0

LC 992 TYPE NONE TITL “100% Z”
RESP TYPE EC-1 CLAS C MOD - SA 1.0 SB 3.0 SMIN 0.200 TB 0.100 TC 0.400 TD 2.000 TE 4.000 K1 1.000 K2 2.000 AG #IMPORTANCE_FACT*#A_GR AV 0.85
ACCE DIR AY 0 AX 0 AZ 1

END

+PROG ASE urs:28.1 $ CALCULATION OF EIGENVALUES
HEAD Calculation Of Eigenvalues
ECHO EIGE YES
ECHO GRP FULL
CTRL OPT SOLV VAL -
CTRL MCON 3
LET#FACS 0.4
#INCLUDE ASE_HASE
#INCLUDE ASE_GRP_SEISM
MASS 0
MASS -39
MASS -40
MASS -41
EIGE NEIG #NUMB_EIGE ETYP SIMU NITE - MITE - LC 8001

END

!*! PROG DYNA - EXTR
#DEFINE DYNA_EXTR
EXTR TYPE MAX STYP=CQC ACT=NONE
U #LC
N ++
VY ++
VZ ++
MT ++
MY ++
MZ ++

 RS1  ++ ; RS2  ++ ; RS3  ++ ; RS4  ++
 RS5  ++ ; RS6  ++ ; RS7  ++ ; RS8  ++
 RS9  ++ ; RS10 ++ ; RS11 ++ ; RS12 ++
 RS13 ++ ; RS14 ++ ; RS15 ++ ; RS16 ++

 P    ++ ; M   ++

#ENDDEF

+PROG DYNA urs:24.2
HEAD Calculation of Spectras
ECHO EIGE,MASS YES
#INCLUDE DYNA_GRP_SEISM
CTRL STYP 3
EIGE NEIG #NUMB_EIGE TYPE REST LC 8001
MODD (1 #NUMB_EIGE 1) D 0.05
LC 990 $ 100X

LET#LC 701
#INCLUDE DYNA_EXTR

END

+PROG DYNA urs:24.3
HEAD Calculation of Spectras
ECHO EIGE,MASS YES
#INCLUDE DYNA_GRP_SEISM
CTRL STYP 3
EIGE NEIG #NUMB_EIGE TYPE REST LC 8001
MODD (1 #NUMB_EIGE 1) D 0.05
LC 991 $ 100Y

LET#LC 801
#INCLUDE DYNA_EXTR

END

+PROG DYNA urs:24.4
HEAD Calculation of Spectras
ECHO EIGE,MASS YES
#INCLUDE DYNA_GRP_SEISM
CTRL STYP 3
EIGE NEIG #NUMB_EIGE TYPE REST LC 8001
MODD (1 #NUMB_EIGE 1) D 0.05
LC 992 $ 100Z

LET#LC 901
#INCLUDE DYNA_EXTR

END

!*! PROG MAXIMA - combination 100_30_30

#DEFINE EARQ_X_Y
LC NO TYPE FACT

700+#A A1 1.0 ; 800+#B F 0.3 $ 100X “+” 30Y
700+#A A1 1.0 ; 800+#B F -0.3
700+#A A1 -1.0 ; 800+#B F 0.3
700+#A A1 -1.0 ; 800+#B F -0.3

800+#B A1 1.0 ; 700+#A F 0.3 $ 100Y “+” 30X
800+#B A1 1.0 ; 700+#A F -0.3
800+#B A1 -1.0 ; 700+#A F 0.3
800+#B A1 -1.0 ; 700+#A F -0.3

#ENDDEF

#DEFINE EARQ_X_Y_Z
LC NO TYPE FACT

700+#A A1 1.0 ; 800+#B F 0.3 ; 900+#C F 0.3 $ 100X “+” 30Y “+” 30Z
700+#A A1 1.0 ; 800+#B F 0.3 ; 900+#C F -0.3
700+#A A1 1.0 ; 800+#B F -0.3 ; 900+#C F 0.3
700+#A A1 1.0 ; 800+#B F -0.3 ; 900+#C F -0.3
700+#A A1 -1.0 ; 800+#B F 0.3 ; 900+#C F 0.3
700+#A A1 -1.0 ; 800+#B F 0.3 ; 900+#C F -0.3
700+#A A1 -1.0 ; 800+#B F -0.3 ; 900+#C F 0.3
700+#A A1 -1.0 ; 800+#B F -0.3 ; 900+#C F -0.3

800+#B A1 1.0 ; 700+#A F 0.3 ; 900+#C F 0.3 $ 100Y “+” 30X “+” 30Z
800+#B A1 1.0 ; 700+#A F 0.3 ; 900+#C F -0.3
800+#B A1 1.0 ; 700+#A F -0.3 ; 900+#C F 0.3
800+#B A1 1.0 ; 700+#A F -0.3 ; 900+#C F -0.3
800+#B A1 -1.0 ; 700+#A F 0.3 ; 900+#C F 0.3
800+#B A1 -1.0 ; 700+#A F 0.3 ; 900+#C F -0.3
800+#B A1 -1.0 ; 700+#A F -0.3 ; 900+#C F 0.3
800+#B A1 -1.0 ; 700+#A F -0.3 ; 900+#C F -0.3

900+#C A1 1.0 ; 700+#A F 0.3 ; 800+#B F 0.3 $ 100Z “+” 30X “+” 30Y
900+#C A1 1.0 ; 700+#A F 0.3 ; 800+#B F -0.3
900+#C A1 1.0 ; 700+#A F -0.3 ; 800+#B F 0.3
900+#C A1 1.0 ; 700+#A F -0.3 ; 800+#B F -0.3
900+#C A1 -1.0 ; 700+#A F 0.3 ; 800+#B F 0.3
900+#C A1 -1.0 ; 700+#A F 0.3 ; 800+#B F -0.3
900+#C A1 -1.0 ; 700+#A F -0.3 ; 800+#B F 0.3
900+#C A1 -1.0 ; 700+#A F -0.3 ; 800+#B F -0.3

#ENDDEF

+PROG MAXIMA urs:24.6
HEAD
ECHO FULL NO ; ECHO TABS YES ; ECHO RSET FULL
CTRL WARN 34

$ U | N | Vy | Vz | Mt | My | Mz | RS1 | … | RS16 | P | M
$ #A,#B,#C values 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | … | 23 | 24 | 25
$ #A —> X ; #B —> Y ; #C —> Z

COMB 1 STAN BASE 3600 TYPE E TITL ‘Seizmic IE behaviour (X,Y)’

LET#A 1 ; LET#B 1
#INCLUDE EARQ_X_Y

LET#A 2 ; LET#B 2
#INCLUDE EARQ_X_Y

LET#A 3 ; LET#B 4
#INCLUDE EARQ_X_Y

LET#A 4 ; LET#B 4
#INCLUDE EARQ_X_Y

LET#A 8 ; LET#B 8
#INCLUDE EARQ_X_Y

LET#A 9 ; LET#B 11
#INCLUDE EARQ_X_Y

LET#A 8 ; LET#B 9
#INCLUDE EARQ_X_Y

LET#A 8 ; LET#B 11
#INCLUDE EARQ_X_Y

SUPP 1 MAMI BEAM N,MY,MZ,VZ,VY,MT
SUPP 1 MAMI NODE UX,UY

COMB 2 STAN BASE - TYPE E_B TITL ‘Seizmic IE behaviour (X,Y,Z)’

LET#A 1 ; LET#B 1 ; LET#C 1
#INCLUDE EARQ_X_Y_Z

LET#A 8 ; LET#B 8 ; LET#C 8
#INCLUDE EARQ_X_Y_Z

LET#A 9 ; LET#B 10 ; LET#C 8
#INCLUDE EARQ_X_Y_Z

LET#A 12 ; LET#B 11 ; LET#C 8
#INCLUDE EARQ_X_Y_Z

LET#A 24 ; LET#B 24 ; LET#C 24
#INCLUDE EARQ_X_Y_Z

LET#A 25 ; LET#B 25 ; LET#C 24
#INCLUDE EARQ_X_Y_Z

LET#BASE 3700

SUPP 2 MAMI NODE UX,UY LC 71+#BASE
SUPP 2 MAMI SPRI P,M LC 45+#BASE

LOOP#I 2
IF #I==0 ; LET#K 0 ; ELSE ; LET#K #SN ; ENDIF
LOOP#J #BEAM_NUM
SUPP TYPE LC FROM=‘B#(#K+1)#(#J+1)’ EXTR=MAMI COMB=2 ETYP=RSET
'B#(#K+1)
#(#J+1)PZ’ 1+#BASE
'B#(#K+1)
#(#J+1)UX’ 3+#BASE
'B#(#K+1)
#(#J+1)UY’ 5+#BASE
'B#(#K+1)
#(#J+1)RX’ 7+#BASE
'B#(#K+1)
#(#J+1)_RY’ 9+#BASE
ENDLOOP
ENDLOOP

COMB 3 COMC 1 EXTR STAN BASE - TYPE E
LET#BASE 3600

LOOP#I #SN-1
LOOP#J #COL_NUM
SUPP TYPE LC FROM=‘F#(#I+1)’ EXTR=MAMI COMB=3 ETYP=RSET
‘N_C#(#J+1)F#(#I+1)’ 1+#J10+#BASE
‘VY_C#(#J+1)F#(#I+1)’ 3+#J
10+#BASE
‘MZ_C#(#J+1)F#(#I+1)’ 5+#J10+#BASE
‘VZ_C#(#J+1)F#(#I+1)’ 7+#J
10+#BASE
‘MY_C#(#J+1)F#(#I+1)’ 9+#J*10+#BASE
ENDLOOP
ENDLOOP

END

Hi Hassan,

can you send your teddy-file to support@sofistik.de?
Copying the input from here is unfortunately not helpful, as there are some wrong line breaks.

Best regards,
Nora

Hi,

I checked once more today and as you can see I am already able to attach files. Please find attached the input file.
I have an additional question regarding HASE module. The bridge that I am modelling has piers and abutments on different level regarding the half-space interaction. I have set the half-space level to the foundation of the highest pier (lowest level - z is increasing downwards) and unfortunately the other ones are not covered entirely. I have tried to set it to the shortest pier (highest level) and I get an error message even though that the other bore profiles are set to their correct level. I will be extremely thankful if you could help me on this matter too.

V87_INPUT.dat (52.3 KB)

Hi Nassan,

sorry for the late reply. We could not find the reason for the error in ASE. The program author could only find a workaround, see file attached. Maybe this helps you further.

workaround.dat (38.9 KB)

Best regards,
Nora

Hi Nora,

Thank you very much for yours and Juergen Bellmann’s efforts in solving my problem. This workaround seems to be working fine for me.

I have an additional issue that I mentioned in my previous post which I still haven’t solved. It regards the ZVAR option in HALF command in HASE. Please find below a citation from my previous post.

“I have an additional question regarding HASE module. The bridge that I am modelling has piers and abutments on different level regarding the half-space interaction. I have set the half-space level to the foundation of the highest pier (lowest level - z is increasing downwards) and unfortunately the other ones are not covered entirely. I have tried to set it to the shortest pier (highest level) and I get an error message even though that the other bore profiles are set to their correct level. I will be extremely thankful if you could help me on this matter too.”

Best regards,
Hassan

Hi Hassan,

I think this can be answered with picture 2.6 from the HASE manual:

If the levels are different, the half-space level and the bore profiles should be set to the highest level (left abutment in that case). If there are horizontal areas underneath this level, HASE will automatically understand, that these surfaces are above the soil instead of inside the soil and adjust the z-level locally (right abutment and pier in the picture).

Best regards,
Nora

Hi Nora,

I am following this procedure from the beginning and somehow I get an error message that says:
“+++++ error no. -92 in program Bohrprofiltiefe < Halbraumoberkante”.
I have checked in wingraf the distribution of the stiffness etc. and they are all correct. Please find attached the teddy file.
V87_HASE_ZVAR.dat (38.6 KB)

I will be extremely happy if you help me.

Regards,
Hasan