moonlight-linalg-0.1.0.0: src-public/Moonlight/LinAlg/Statics.hs
-- | Statics types, assembly, equilibrium compilation, and support checking.
module Moonlight.LinAlg.Statics
( NodeRef,
nodeRef,
nodeRefLabel,
Axis (..),
Vec3 (..),
MemberRef,
mkMemberRef,
memberEndpoints,
memberTouchesNode,
SupportAxes,
mkSupportAxes,
supportAxesList,
freeSupportAxes,
fixedSupportAxes,
ForceNode,
ForceNetwork,
nodePosition,
nodeLoad,
nodeSupportAxes,
nodeReactionAxes,
networkNodeMap,
networkMemberSet,
NetworkDeclaration,
NetworkBuildError (..),
joint,
support,
supportOn,
load,
member,
network,
UnknownForce (..),
EquationRef (..),
CompiledEquilibrium,
compiledNodeOrder,
compiledFoundationOrder,
compiledMemberOrder,
compiledMemberDirections,
compiledUnknownOrder,
compiledEquationOrder,
compiledCoefficientMatrix,
compiledRightHandSide,
EquilibriumSolution (..),
ForceSign (..),
EquilibriumViolation (..),
EquilibriumResult (..),
allAxes,
addVec3,
subVec3,
negateVec3,
scaleVec3,
dotVec3,
magnitudeVec3,
normalizeVec3,
normalizeVec3Safe,
axisComponent,
axisVector,
vec3Zero,
assembleEquilibriumEquations,
checkEquilibrium,
solveGraphicStatics,
)
where
import Moonlight.LinAlg.Pure.Statics.Algebra
( addVec3,
allAxes,
axisComponent,
axisVector,
dotVec3,
magnitudeVec3,
memberEndpoints,
memberTouchesNode,
mkMemberRef,
negateVec3,
normalizeVec3,
normalizeVec3Safe,
scaleVec3,
subVec3,
vec3Zero,
)
import Moonlight.LinAlg.Pure.Statics.Compile
( assembleEquilibriumEquations,
)
import Moonlight.LinAlg.Pure.Statics.Core
( checkEquilibrium,
solveGraphicStatics,
)
import Moonlight.LinAlg.Pure.Statics.Network
( NetworkBuildError (..),
NetworkDeclaration,
joint,
load,
member,
network,
networkMemberSet,
networkNodeMap,
nodeLoad,
nodePosition,
nodeReactionAxes,
nodeRef,
nodeRefLabel,
nodeSupportAxes,
support,
supportOn,
)
import Moonlight.LinAlg.Pure.Statics.Types
( Axis (..),
CompiledEquilibrium,
EquationRef (..),
EquilibriumResult (..),
EquilibriumSolution (..),
EquilibriumViolation (..),
ForceNetwork,
ForceNode,
ForceSign (..),
MemberRef,
NodeRef,
SupportAxes,
UnknownForce (..),
Vec3 (..),
compiledCoefficientMatrix,
compiledEquationOrder,
compiledFoundationOrder,
compiledMemberDirections,
compiledMemberOrder,
compiledNodeOrder,
compiledRightHandSide,
compiledUnknownOrder,
fixedSupportAxes,
freeSupportAxes,
mkSupportAxes,
supportAxesList,
)