Skip to content

    Under active development. New calculators and features ship every week. Everything currently runs free while the site matures — pricing pages are a preview, checkout is not open yet.

    Calculates locally in your browser · arbitrary frame editor
    Structural / frame model

    Frame model editor and modal analysis

    Type the frame you actually have: any nodes, any members, point loads where they land, hinges where they belong. The solver assembles it, finds the second-order forces, and pulls the natural frequencies out of the same stiffness matrix so you can see how the modes soften as the load approaches buckling.

    Model6N · 5MMass1.88 tSolverConverged
    Peak end moment
    111.4 kN·m
    Across 5 members
    First frequency
    54.01 Hz
    Period 0.019 s
    Max sway
    3.33 mm
    Drift 1/1200 of the height
    Critical factor
    272.4
    P-Δ amplification 1.004
    Member forces and frequencies
    Second-order end forces per member, then the natural frequencies of the whole frame.
    5 members
    Member forces and frequencies
    MemberNodesAxial (kN)Shear (kN)Moment iMoment j
    M10–348.17.735.34.3
    M21–4154.725.859.244.1
    M32–577.241.680.186.5
    M43–417.348.24.3111.4
    M54–516.670.867.386.5

    Frequencies (Hz): 54.01 · 60.80 · 80.53 · 160.93 · 162.64

    Inspect the model
    Choose a quick result view, a scaled comparison, or the complete diagnostic set.
    End moments by member
    Absolute moments at each member end; the largest one governs the section.
    End moments by member0.00026.2952.5878.88105.17131.4635.344.27M1M159.2044.14M2M280.1086.46M3M34.27111.41M4M467.2786.45M5M5End iEnd j
    Natural frequencies
    Lumped-mass modes of the frame under its current axial load, so P-Δ softening is included.
    Natural frequencies0.00053.72107.43161.15214.87268.5854.01f1f160.80f2f280.53f3f3160.93f4f4162.64f5f5227.61f6f6Hz
    Canonical equations
    The exact relationships implemented by this engine.

    node · member · load · One line each; anything after # is a comment.

    (K_e − K_g) u = F · Iterated on the axial forces.

    (K_e − K_g) φ = ω² M φ · Consistent mass, Cholesky reduction of the generalised problem.

    f = √λ / 2π · λ from the Jacobi eigensolver.

    engineering methodology

    A clear path from inputs to results.

    Real frames are not three tidy bays. This is a text model: type the nodes, the members between them, and the point loads where they land, then read the second-order forces and the natural frequencies of the frame you actually have.

    Step-by-step methodWorked exampleAssumptions explained

    How to use

    1. Write a node line for every joint: x, y and the support type.
    2. Write a member line for every element, with optional w=, mass=, hinge= and P=@ options.
    3. Add nodal loads with a load line.
    4. Set the default section; member lines can override it.
    5. Read the forces, the critical factor and the frequencies.

    The formula

    node x y [support]  ;  member i j [w=] [mass=] [P=@]  ;  (Ke−Kg)ϕ=ω2Mϕ\text{node } x\ y\ [support] \;;\; \text{member } i\ j\ [w=]\ [mass=]\ [P=@] \;;\; (K_e - K_g)\phi = \omega^2 M\phi

    Reference: Direct stiffness method; Guyan reduction of massless rotations; Jacobi eigensolver for the generalised problem.

    Worked example

    Two-bay portal with a point load, four sub-elements

    Inputs
    • Six nodes: three fixed bases and three eaves, 6 m bays, 4 m eaves.
    • Five members: three columns, two beams with w = −22 and −18 kN/m.
    • A −40 kN point load 3 m along the second beam, plus 25 kN lateral at each eave.
    • Default section 180 cm², 30,000 cm⁴, steel at 200 GPa.
    Calculation path
    1. 1

      The parser reads six nodes, five members and three loads with no errors.

    2. 2

      The solver assembles 6 × 3 = 18 degrees of freedom and iterates P-Δ.

    3. 3

      The peak end moment is 111.4 kN·m and the frame sways 3.3 mm.

    4. 4

      The critical factor is 272, so the P-Δ amplification is only 1.004.

    5. 5

      Lumped mass gives a first frequency of 54.0 Hz for the frame as loaded.

    Result

    111.4 kN·m · 3.3 mm sway · λ 272 · f₁ 54.0 Hz.

    Interpreting the result

    Point loads split the member at their position, so the reactions are exact rather than smeared over a sub-element. The frequencies come from the same stiffness the static solve used, which means they already include the P-Δ softening: load the frame towards its critical factor and the first mode walks down towards zero.

    Assumptions & limitations

    • Euler–Bernoulli frame elements, 3 DOF per node.
    • Mass is either consistent (rotational inertia kept, Cholesky reduction) or lumped (rotations condensed by Guyan).
    • Point loads and applied moments are inserted as real nodes; the mesh also subdivides uniformly.
    • Support settlement enters as a prescribed displacement, so the reactions follow from the constrained stiffness.
    • Elastic material, prismatic members, no joint eccentricity or shear deformation.

    Frequently asked questions

    Why does a higher subdivision change the frequency?

    With lumped mass a coarse mesh over-stiffens the mode; consistent mass is far more accurate at the same mesh and converges from above.

    Can I apply a moment along a member?

    Yes: M=40@3 applies 40 kN·m three metres from node i, using the derivative of the Hermite shape functions.

    How do I model a hinge?

    Add hinge=start, hinge=end or hinge=both to the member line. The moment is condensed out of that end, so it carries zero moment.

    How do I model a settled support?

    Add settle=uy:-0.01 to the node line (or ux:/rz:). The prescribed value moves to the right-hand side and the member end moments follow from it.

    What does λ mean here?

    The elastic critical load factor on the applied loads. At λ = 1 the geometric stiffness cancels the elastic one and the frame buckles.

    Can I mix sections?

    Yes: put E=, A= or I= on any member line to override the default for that member only.

    Methodology last reviewed 2026-10-21. Results are informational and not financial or engineering advice — see our disclaimer.