Geometry

Plot-ready geometry extraction: flattened structure geometry and exact deflected element curves.

Asap.GeoFunction
Geo(model::Model) -> ModelGeo
Geo(network::Network) -> NetworkGeo

Flatten a solved structure into plain plot-ready arrays: node positions, displaced positions, element connectivity, and per-element force ranges with their maxima. Dispatches on the structure type — a frame/truss Model produces a ModelGeo, an FDM Network a NetworkGeo. For an axial-only extraction of a truss model, construct a TrussGeo directly.

source
Asap.ModelGeoType
ModelGeo <: AbstractGeo

Plot-ready arrays extracted from a solved frame Model: node positions, nodal displacements, element connectivity, per-element end-force ranges (P, Vy, Vz, Tx, My, Mz with their maxima), section properties, and element vectors. Construct with Geo(model) or ModelGeo(model).

source
Asap.NetworkGeoType
NetworkGeo <: AbstractGeo

Plot-ready arrays extracted from a solved FDM Network: node positions, element connectivity, force densities and member forces/lengths with their maxima. Construct with Geo(network) or NetworkGeo(network).

source
Asap.ElementDisplacementsType
ElementDisplacements

The displaced shape of one element, sampled at evenly spaced stations using the exact elastic curve from Asap's displacement recovery.

Fields

  • element::AbstractElement the sampled element
  • resolution::Integer number of stations
  • x::Vector station positions along the member [length]
  • ulocal::Matrix [3 × n] displacements in the element LCS (axial, local y, local z) [length]
  • uglobal::Matrix [3 × n] displacements in the GCS [length]
  • basepositions::Matrix [3 × n] undisplaced sampling positions [length]
source
Asap.ElementDisplacementsMethod
ElementDisplacements(element::FrameElement, model::Model; resolution = 20)

Get the local/global displacements of an element.

  • ulocal [3 × resolution] displacements in the element LCS (axial, local y, local z)
  • uglobal [3 × resolution] displacements in the GCS
  • basepositions [3 × resolution] undisplaced sampling positions along the element
source
Asap.ElementDisplacementsMethod
ElementDisplacements(element::TrussElement, model::Model; resolution = 20)

Truss elements displace linearly between their end nodes.

source
Asap.ElementDisplacementsMethod
ElementDisplacements(elements::Vector{<:AbstractElement}, model::Model; resolution = 20)

Get the displacements of an ordered chain of elements that form a single physical member.

source
Asap.displacementsMethod
displacements(model::Model, increment::Real)

Get the displacements of all elements in a model

source