mboct-fem-pkg
This package belongs to a suite of packages which can be used for pre- and postprocessing of flexible bodies in MBDyn (www.mbdyn.org) with GNU-Octave. It contains a general purpose Finite Element toolkit for linear structural-, linear thermal-, linear acoustic-problems and also fluid structure interaction problems. This toolkit can be used to generate flexible body data for MBDyn's modal element. That data can be used to describe flexible bodies with moving reference frames (e.g. rotor dynamics).
Select category:
Preprocessing
Postprocessing
Assembly of global matrices
Solvers
Substructuring
Elastohydrodynamic bearings
Other
Create a .geo file which can be loaded into Gmsh (http://gmsh.info).
Allocate a struct array of size of empty load cases
Combine several struct arrays of load cases into a single struct array
Compute the constitutive law matrix C for isotropic elasticity
Compute Rayleigh damping coefficients
Convert elements of type sfncon4 or sfncon6 to joints.
Create a very simple cube mesh of a cantilever beam clamped at x=0 and loaded at x=l
Compute corner angles for eight node hexahedrons
Convert eight node hexahedra to six node pentahedra by splitting, if the maximum corner angle is above certain limit.
Return a list of supported elements
Return a list of supported elements
Return the value IDX for which strcmp(ELEM_NAMES{IDX}, NAME) returns true.
Extrude a surface mesh along the surface normal in order to generate a volume mesh
Create groups of elements or nodes which are located within geometrical limits defined by simple shapes like boxes or cylinders
Load a mesh and a load case from a file.
Merge several meshes into a single mesh.
Compute unit pressure loads for surface elements
Builds rbe2 elements from specified groups of surface elements
Builds rbe3 elements from specified groups of tria6 elements and assigns weighting factors proportional to equivalent surface area
Apply a fill-in reducing ordering based on METIS
Create a surface mesh from solid elements
Create a structured hexahedral mesh of arbitrary shape, defined by callback functions.
Create an unstructured tetrahedral or hexahedral mesh using Gmsh.
Expand a modal solution to a nodal solution, compute stresses and scale deformations
Convert a modal solution Q to a nodal solution DEF.
Expand and export the solution from MBDyn models with modal elements.
Import modal element solutions from MBDyn
Merge the solutions (displacements, stresses) of several modal bodies
Import deformations from Nastran pch files
Map a solution vector or load vector U back to nodal displacements DEF
Export a finite element mesh to Gmsh- or APDL-format.
Merge several meshes into a single mesh.
Export a finite element mesh and related solution to a set of files for post-processing with Gmsh.
Do postprocessing of a finite element solution within Gmsh.
Plot a mesh in deformed or undeformed state.
Create a Gmsh script named
for post-processing within Gmsh.
Export stresses and displacements of a single time step or mode shape to a file in Gmsh format.
Import stresses from a Nastran PCH file.
build constraints in all three directions in space
build only one constraint normal to the surface
acoustic domain
fluid-structure interaction domain
structural domain
thermal domain
complete damping matrix
imaginary part of acoustic damping matrix
real part of acoustic damping matrix
imaginary part of fluid-structure interaction damping matrix
real part of fluid-structure interaction damping matrix
damping matrix resulting from a rotating reference frame
upper triangular part of the damping matrix
lower triangular part of the damping matrix
heat capacity matrix
MBDyn's invariant 3 with respect to the global reference frame
MBDyn's invariant 4 with respect to the global reference frame
MBDyn's invarinat 5 with respect to the global reference frame
MBDyn's invariant 8 with respect to the global reference frame
MBDyn's invariant 9 with respect to the global reference frame
3x3 inertia matrix with respect to the origin of the global reference frame
complete consistent mass matrix
imaginary acoustic mass matrix
real acoustic mass matrix
imaginary fluid-structure interaction mass matrix
real fluid-structure interaction mass matrix
diagonal lumped mass matrix
upper triangular part of the mass matrix
lower triangular part of the mass matrix
complete stiffness matrix
imaginary part of acoustic stiffness matrix
real part of acoustic stiffness matrix
imaginary fluid-structure interaction stiffness matrix
real fluid-structure interaction stiffness matrix
stiffness matrix resulting from a rotating reference frame with constant angular velocity
stiffness matrix resulting from a rotating reference frame with constant angular acceleration
upper triangular part of the stiffness matrix
lower triangular part of the stiffness matrix
stiffness matrix resulting from pre-stress
thermal conductivity matrix
acoustic intensity and sound power
acoustic intensity and sound power for complex solutions
Van Mises stress
total mass of all elements
collocation points of heat capacity matrix
collocation points of mass matrix
collocation points of acoustic mass matrix
collocation points of fluid structure interaction mass matrix
collocation points of stiffness matrix
collocation points of acoustic stiffness matrix
collocation points of fluid structure interaction stiffness matrix
collocation points of thermal conductivity matrix
center of mass times total mass of all elements with respect to the origin of the global reference frame
acoustic load vector
consistent load vector
fluid-structure interaction load vector
lumped load vector
thermal load vector
acoustic particle velocity
complex acoustic particle velocity
linear strain tensor
linear stress tensor
surface normal vector at elements
Assemble a sparse matrix containing the constraint equations of a single group of surface to node constraints
Build a data structure which assigns global degrees of freedom to each node and each element with Lagrange multipliers.
This function is the core of the finite element toolkit.
Callback function for fem_sol_eigs.
Converts eigenvectors X, returned from eigs, to the solution U of K * U = lambda^2 * M * U.
Return true if the function eigs_func(AFACT, M, X) defines a symmetric problem.
Create a generic factor object which uses the builtin backslash operator to solve A * X = B via X = AFACT \ B
Solve AFACT * X = B by using the factor object AFACT.
Callback function for fem_sol_eigs.
Converts eigenvectors X, returned from eigs, to the solution U of K * U = lambda^2 * M * U.
Return true if the function eigs_func(AFACT, M, X) defines a symmetric problem.
Create a factor object to solve A * X = B by means of Octave's builtin chol function via X = AFACT \ B
Solve AFACT * X = B by using the factor object AFACT.
Callback function for fem_sol_eigs.
Converts eigenvectors X, returned from eigs, to the solution U of K * U = lambda^2 * M * U.
Return true if the function eigs_func(AFACT, M, X) defines a symmetric problem.
Create a factor object to solve A * X = B by means of Octave's builtin lu function via X = AFACT \ B
Solve AFACT * X = B by using the factor object AFACT.
Callback function for fem_sol_eigs.
Converts eigenvectors X, returned from eigs, to the solution U of K * U = lambda^2 * M * U.
Return true if the function eigs_func(AFACT, M, X) defines a symmetric problem.
Create a factor object which uses MUMPS to solve A * X = B by means of X = AFACT \ B
Solve AFACT * X = B by using the factor object AFACT.
Callback function for fem_sol_eigs.
Converts eigenvectors X, returned from eigs, to the solution U of K * U = lambda^2 * M * U.
Return true if the function eigs_func(AFACT, M, X) defines a symmetric problem.
Create a factor object which uses PaStiX to solve A * x = b via X = AFACT \ B
Solve AFACT * X = B by using the factor object AFACT.
Callback function for fem_sol_eigs.
Converts eigenvectors X, returned from eigs, to the solution U of K * U = lambda^2 * M * U.
Return true if the function eigs_func(AFACT, M, X) defines a symmetric problem.
Create a factor object to solve A * X = B by means of Umfpack via X = AFACT \ B
Solve AFACT * X = B by using the factor object AFACT.
Check if the solver is available.
Solve the general eigenvalue problem K * U = lambda^2 * M * U or K * U = -lambda * M * U.
Solve the general eigenvalue problem (lambda^2 * M + lambda * D + K) * U = 0
Post-processing support for fem_sol_modal_damped and fem_sol_modal_fsi
Build a factor object AFACT for matrix A which can be used to solve a system of linear equations A * X = B by means of the expression X = AFACT \ B.
Solve -OMEGA^2 * M + 1j * OMEGA * D + K = R using a preconditioned gmres solver
Compute the harmonic solution based on eigenvalues LAMBDA, normalized mode shapes PHI and modal excitation H
Compute the harmonic solution based on modal damping DGEN, modal stiffness KGEN modal excitation RGEN and mode shapes PHI.
Choose an appropriate linear solver and solve K * U = R
Compute row scaling factors D1 and column scaling factors D2 to improve the condition number of matrix A
Compute undamped natural frequencies and mode shapes.
Compute damped natural frequencies and mode shapes.
Compute damped natural frequencies and mode shapes.
Scale mode shapes returned from fem_sol_modal_damped for use with fem_sol_harmonic_modal.
Scale mode shapes returned from fem_sol_modal for use with fem_sol_harmonic_modal2.
Allow the solution of a real system of equations with complex right hand sides.
Return the name of a solver which can be used to solve a system of linear equations.
Solve a linear static problem and return a structure with nodal displacements
Not documented
Initialize the transient solver
Perform a time step
Eliminate algebraic constraint equations from the stiffness matrix and return matrices for a reduced set of equations
Returns a transformation matrix which can be used for the elimination of algebraic constraint equations.
Build a reduced order model by using the Craig Bampton approach.
Build a reduced order model by using the Craig Bampton approach.
Return a boolean matrix DOF_IN_USE which indicates active degrees of freedom used by elements.
Create modal element files for MBDyn.
Effectively compute TAT = T.' * A * T but more efficient in time and memory for large symmetric sparse matrices A
Build a reduced order model by static condensation.
Build transformation matrix for rigid body motion of a mesh with nodal coordinates XN
Print a compliance matrix to a file which can be loaded by MBDyn's module-hydrodynamic_plain_bearing2.
Build pressure load cases required for fem_ehd_pre_comp_mat_unstruct.
Build pressure load cases required for fem_ehd_pre_comp_mat_unstruct.
Create contour plots of a compliance matrix for debugging purposes.
Compute a compliance matrix for use with MBDyn's module-hydrodynamic_plain_bearing2 for a simple structured mesh
Compute a compliance matrix suitable for MBDyn's module-hydrodynamic_plain_bearing2
Parse the software version of an external pre/post-processor (e.g. gmsh) and return the version number as a matrix.
Package: mboct-fem-pkg