Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Input ¶
type Input struct {
// Run Info
Shear bool // indicates shear deformation
Geom bool // indicates geometric nonlinearity
// Node Info
NumNodes int // number of Nodes
Xyz []femath.Vec3 // {NumNodes} X,Y,Z node coordinates (global)
NodeRadius []float64 // {NumNodes} node size radius, for finite sizes
// Reaction Info
ReactedDof []bool // {Dof} Dof's with reactions formally "r"
UnreactedDof []bool // {Dof} Dof's without reactions formally "q" (calculated)
// Element Info
NumElems int // Number of Frame Elements
N1, N2 []int // {NumElems} begin and end node numbers
Ax, Asy, Asz []float64 // {NumElems} cross section areas, incl. shear
Jx, Iy, Iz []float64 // {NumElems} section inertias
ElemRoll []float64 // {NumElems} roll of each member, radians
E, G []float64 // {NumElems} elastic modulus, shear modulus
ElemDensity []float64 // {NumElems} member densities
L []float64 // node-to-node length of each element (calculated)
Le []float64 // effective length, accounts for node size (calculated)
// Load Info
StaticTol float64 // Convergence tolerance for the static analysis when Geom == true
AnalyzeLoadCase bool // Are there mechanical loads in Mechanical Loads
MechanicalLoads []float64 // {Dof} mechanical load vectors, all load cases
TempLoads bool // Are there temperature loads in the load case
ThermalLoads []float64 // {Dof} thermal load vectors, all load cases
EqFMech [][]float64 // {numElems}{12} equivalent end forces from mech loads global (calculated)
EqFTemp [][]float64 // {numElems}{12} equivalent end forces from temp loads global (calculated)
// Mass Info
LumpFlag bool // true: lumped mass matrix or false: consistent mass matrix
NMs []float64 // {NumNodes} node mass for each node
NMx []float64 // {NumNodes} node inertia about global X axis
NMy []float64 // {NumNodes} node inertia about global Y axis
NMz []float64 // {NumNodes} node inertia about global Z axis
EMs []float64 // {NumElems} lumped mass for each frame element
// Time integration parameters
Dt float64
Alpha float64
Beta float64
// Initial Conditions
U0 []float64 // {Dof} prescribed node displacements
V0 []float64 // {Dof} initial nodal velocities
A0 []float64 // {Dof} initial nodal accelerations
// contains filtered or unexported fields
}
Input contains the necessary input data to run a modal analysis with the exception of the stiffness matrix.
func (*Input) DoF ¶
DoF returns the degrees of freedom of the model described by the ModalInput structure (6*NumNodes).
func (*Input) Run ¶
func (inData *Input) Run(calcAccel bool) (Khat, M, Q1 [][]float64, Fhat, U1, V1, A1, R1 []float64, eqErr, rmsResid float64, ok int, finalErr error)
Run performs a modal analysis of the model, and returns the dynamic stiffness and mass matricies, and the resonant mode-shapes and frequencies.
Click to show internal directories.
Click to hide internal directories.