@ferscloud/fers-calculation-web 0.2.41 → 0.2.42

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -165,6 +165,26 @@ import type { FERS, ResultsBundle } from "@ferscloud/fers-calculation-web/fers-m
165
165
 
166
166
  `FERS` is the input model; `ResultsBundle` is the `result` payload of a successful envelope. Both are generated from the engine's OpenAPI schema, so they track the published version.
167
167
 
168
+ ## Deflected shape (optional)
169
+
170
+ Set `include_member_deflected_shape` in the model's analysis options to get a
171
+ ready-to-plot, **load-exact** deflected shape per member — the member's global
172
+ displacement sampled along its length — instead of reconstructing the curve yourself:
173
+
174
+ ```ts
175
+ const model = {
176
+ /* … model + load cases … */
177
+ analysis: { /* … */ options: { /* … */ include_member_deflected_shape: true } },
178
+ };
179
+
180
+ const res = JSON.parse(calculate_from_json(JSON.stringify(model)));
181
+ const mr = res.result.results.loadcases["…"].member_results["1"];
182
+ // mr.member_displacements: [{ x_frac, displacement: [dx, dy, dz] }, …]
183
+ // x_frac 0→1 along the member; displacement in the global input frame.
184
+ ```
185
+
186
+ Off by default to keep the payload lean; omitted from `member_results` when not requested.
187
+
168
188
  ## Links
169
189
 
170
190
  - [Full documentation & getting started](https://ferscloud.com/getting-started)
package/fers-models.d.ts CHANGED
@@ -312,7 +312,16 @@ export interface components {
312
312
  * @enum {string}
313
313
  */
314
314
  DeflectionComponent: "LocalY" | "LocalZ" | "Magnitude";
315
- /** @enum {string} */
315
+ /**
316
+ * @description Unit of mass density used by every `Material.density` in the model.
317
+ *
318
+ * Chosen **independently** of `lengthUnit` — a mm/N model may still declare
319
+ * `kg/m3` and pass raw values like structural steel's `7850`. Accepted JSON
320
+ * tokens are the ASCII strings `"kg/m3"` and `"kg/mm3"` (digit `3`, not the
321
+ * superscript `³`); both normalise to SI (kg/m³) internally regardless of the
322
+ * length unit. Default: `"kg/m3"`.
323
+ * @enum {string}
324
+ */
316
325
  DensityUnit: "kg/m3" | "kg/mm3";
317
326
  /**
318
327
  * @description Python:
@@ -2347,6 +2356,10 @@ export interface components {
2347
2356
  };
2348
2357
  /** @description The model's unit system (length, force, density, pressure) for input and results. */
2349
2358
  UnitSettings: {
2359
+ /**
2360
+ * @description Unit of every `Material.density`; independent of `lengthUnit`
2361
+ * (a mm/N model may still declare `"kg/m3"`). See [`DensityUnit`].
2362
+ */
2350
2363
  densityUnit?: components["schemas"]["DensityUnit"];
2351
2364
  forceUnit?: components["schemas"]["ForceUnit"];
2352
2365
  lengthUnit?: components["schemas"]["LengthUnit"];
Binary file
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@ferscloud/fers-calculation-web",
3
3
  "type": "module",
4
- "version": "0.2.41",
4
+ "version": "0.2.42",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "git+https://github.com/Jeroen124/FERS_calculations.git"