Variables in order of occurence in file
Input
Problem Parameters
L
= Span of portal centre to centre column (mm)
L
h
= Length of Haunches (mm)
h
e
= Height of Eaves floor to centre rafter centreline ignoring haunch (mm)
q
= Roof slope (radians or use deg units) or simply overwrite "f" the slope height
x, y = matrix of joint coordinates (mm)
nc = member connectivity matrix 1st node #, 2nd Node #, Section # (1 based array index for ease of input)
r = restraint matrix node #, code "x", code "y", code "
q
z
" - 1 is fixed, 0 is free.
nf = node forces matrix node #, load case #, Fx, Fy, M
z
(N & mm units) - global axis.
Material Parameters
E = material Young's modulus (MPa).
r
= material density (T/mm
3
).
Steel Section Parameters
Rafter = zero based index into steel data file
Column = zero based index into steel data file
UB = Read File component that reads BHP data file
Calculation of Haunch Properties
D,B,T,t = standard I section dimensions read from UB matrix.
d
n
= minimum haunch depth
d
x
= maximum haunch depth left from d
n
cut
d
2
= depth extra piece at centre of deep haunch members
d
3
= depth extra piece at centre of shallow haunch members
A
2
, A
3
= Area of haunch sections
Ay
2
, Ay
3
= First moment of Area about bottom face haunch
yc
2
, yc
3
= centroid distance from bottom face haunch
I
2
, I
3
= Inertia of haunch sections about centroid
b
sp
= matrix of section properties A,I
Calculate Member Length and Angle
j = index over each beam member
ml = matrix of calculated length each beam member
b
= matrix of angle of each beam member in XY plane.
Element Stiffness
R(
q
) = transformation matrix as a function in
q
= angle in XY plane
S
i
, S
j
, S
k
= values for prismatic members that could be adjusted for non-prismatic if required
A
i
, A
j
, B, C
i
, C
j
, D, T = elements of beam stiffness matrix as functions in L,
q
, A, I, E of beam
S = local beam structural stiffness transformed with R(
q
) for recovery of end forces as function
L, q, A, I, E
K
b
= global axis beam structural stiffness matrix as function L, q, A, I, E
K
bg
= nested vector composed of each transformed global axis beam structural stiffness matrix of each beam.
Global Stiffness
K
sg
= global structure stiffness matrix
created as an identity matrix, then zero the diagonal as quickest way to create it.
Each beam global stiffness then added to structure stiffness.
rk= number rows in K
sg
global stiffnes matrix
l = index over rows of K
sg
i= index over one node deflections
d
x,
d
y,
q
z ie 0, 1, & 2
m =
index over one node deflections dx, dy, qz ie 0, 1, & 2
Re = Mathematical fudge to set the fixed reactions to very large relative stiffness to produce zero deflection.
May need to adjust to get solution by adjusting power of ten in Re = max(Ksg)x10^5.Big is better.
Can replace diagonal matrix element value with actual spring value for spring restraints.Natural frequency
analysis is sensitive to value chosen?
k = index over rows of "r" restraint matrix
Create Structure Load Matrix
lc = number of load cases.
n = index over rows of "nf" node force matrix
f
= global node force matrix
lci= index over column of f -> indicates each load case
Deflection Results
d
i
= global deflection results determined by inversion of K
sg
.
QR Decomposition Technique
M= result of QR decomposition function and is matrix Q & R augmented together.
Q= orthonormal matrix Q
T
.Q = I.
RR= upper triangular matrix such that Q.R = K
sg
.
yqr= intermediate solution vector for QR solution of equations technique.
bi= backward substitution index.
dqr= global deflection results determined using QR decomposition of Ksg.
Choleski Decomposition Technique
L= lower triangular matrix such that L.L
T
= K
sg
L is
result of cholesky() functio
n
.
yc= intermediate solution vector.
fi= forward substitution index.
d
c= global deflection results determined using Cholesky decomposition of K
sg
.
Plot Deflections
d
p
= load case for deflection plot.
o = index over rows of "x" and "y" coordinate matrices.
diag= dimension of diagonal across structural model as reference to scale plots
d
s
= scale factor for deflection plot as % of model diagonal / maximum deflection.
d
x,
d
y = extracted x and y deflections for required load case plot.
Member End Forces
lci = index over each load case.
A
m
= resulting member end forces matrix.
Natural Frequency Analysis
m
b
= lumped mass function in terms beam length and area "L" & "A".
m
s
= array of lumped mass matrices for each beam.
m
g
= global structure lumped mass matrix
created as an identity matrix, then zero the diagonal as quickest way to create it.
Each beam mass stiffness then added to structure mass.
nn = vector of eigenvalues 2
p
w
2
as solution of K
sg
{x} = 2
p
w
2
m
g
{x}.Resulting vector in descending order.
Last element is lowest
2
p
w
2
and first mode.2nd last element is 2nd mode etc.
nf =
matrix with each column being the eigenvector associated with the eigenvalues above.
inn = number of eigenvalues in "nn" vector.
inn-mode = index into eigenvalues vector "nn" and eigenvector matrix "nf"
for a particular mode
.