Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AssembleM ¶
func AssembleM(M [][]float64, DoF, nN, nE int, xyz []femath.Vec3, r, L []float64, N1, N2 []int, Ax, Jx, Iy, Iz, p, d, EMs, NMs, NMx, NMy, NMz []float64, lump bool) (finalErr error)
AssembleM assembles the global mass matrix from element mass & inertia 24nov98
double **M, /**< mass matrix */ int DoF, /**< number of degrees of freedom */ int nN, int nE, /**< number of nodes, number of frame elements */ vec3 *xyz, /** XYZ locations of each node */ float *r, /**< rigid radius of every node */ double *L, /**< length of each frame element, effective */ int *N1, int *N2, /**< node connectivity */ float *Ax, /**< node connectivity */ float *Jx, float *Iy, float *Iz, /**< section area inertias*/ float *p, /**< roll angle, radians */ float *d, /**< frame element density */ float *EMs, /**< extra frame element mass */ float *NMs, /**< node mass */ float *NMx, float *NMy, float *NMz, /**< node inertias */ int lump, /**< 1: lumped mass matrix, 0: consistent mass */
Types ¶
type Input ¶
type Input struct { // 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" // Element Info NumElems int // Number of Frame Elements N1, N2 []int // {NumElems} begin and end node numbers Ax []float64 // {NumElems} cross section area Jx, Iy, Iz []float64 // {NumElems} section inertias ElemRoll []float64 // {NumElems} roll of each member, radians ElemDensity []float64 // {NumElems} member densities L []float64 // node-to-node length of each element (calculated) // Dynamic Analysis Data NumModes int // number of desired modes ModalMethod int // modal analysis method: 1=Jacobi-Subspace or 2=Stodola LumpFlag bool // true: lumped mass matrix or false: consistent mass matrix ModalTol float64 // convergence tolerance for modal analysis ModalFreqShift float64 // modal frequency shift for unrestrained structures, shift-factor for rigid-body-modes 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 // contains filtered or unexported fields }
Input contains the necessary input data to run a modal analysis with the exception of the stiffness matrix.
Click to show internal directories.
Click to hide internal directories.