Skip to main content
Glama

FERS — structural FEM

Add a load

add_load
Read-only

Add ONE load of any kind to an existing load case. Choose kind: "nodal_force" (force at a node), "nodal_moment" (moment at a node — direction is the moment AXIS, right-hand rule), "distributed" (line load along a member; covers uniform, TRAPEZOIDAL/TRIANGULAR via end_magnitude, and PARTIAL via start_frac/end_frac), "member_point_force" / "member_point_moment" (at a fractional position along a member, in global or local axes), "surface" (pressure over a convex planar polygon, distributed onto the coplanar members inside it), "plate_pressure" (pressure on a meshed plate surface). SIGN: direction_x/y/z is a GLOBAL vector — gravity is direction_y = -1. The direction is normalised for you and the whole load stays in magnitude (the raw engine multiplies component-wise, so an unnormalised [0,-2,0] would silently double the load). Distributed intensity is per unit of MEMBER length, not of horizontal projection. Units are the model's own (default N, m) EXCEPT plate_pressure, which must always be in SI pascals. Free.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
axesNomember_point_* only: "global" (default) or "local" (member frame, local x along the member).
kindYesnodal_force | nodal_moment | distributed | member_point_force | member_point_moment | surface | plate_pressure
nodeNoTarget node id — required for nodal_force / nodal_moment.
modelNoStringified FERS model JSON
memberNoTarget member id — required for distributed / member_point_force / member_point_moment.
polygonNosurface only. >= 3 vertices, planar and CONVEX, e.g. [[0,0,0],[6,0,0],[6,0,4],[0,0,4]]. Only members lying exactly in that plane receive load.
end_fracNodistributed only. Where it ends, 0..1 (default 1).
positionNoFraction along the member, 0 = start node, 1 = end node. Required for member_point_*. Clamped to [0,1] (the engine does not range-check it).
magnitudeNoLoad size, always positive — put the sense in direction_x/y/z. Force / force*length / force per length / force per area depending on kind.
model_refNoHandle from stash_model, used INSTEAD of `model`. Avoids sending the whole document on every step; the tool returns the same handle back.
projectedNoplate_pressure only. false (default) = pressure on the true area; true = on the projected area (snow-style).
start_fracNodistributed only. Where the line load starts, 0..1 (default 0). Use 0.25/0.75 for a partial UDL over the middle half.
surface_idNoplate_pressure only: id of a model.plate_surfaces[] entry. Prefer this.
direction_xNoX component of the direction (or moment axis). Default 0.
direction_yNoY component. Gravity is -1 in these Y-up models. Default 0.
direction_zNoZ component. Default 0. At least one component must be non-zero.
load_case_idNoid of the load case to append to (from add_load_case)
end_magnitudeNodistributed only. Intensity at end_frac. Omit for uniform; set it different from magnitude for a TRAPEZOID; magnitude 0 + end_magnitude w gives a TRIANGLE. There is no separate shape field — the shape IS these numbers.
distribution_dxNosurface only, optional: X of the span direction the load is carried in.
distribution_dyNosurface only, optional: Y of the span direction.
distribution_dzNosurface only, optional: Z of the span direction.
plate_element_idNoplate_pressure only: one generated element. Element ids change whenever the mesh changes — prefer surface_id.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.