@theerapat-s28/ts-structural-eng-tools 3.2.0 → 3.4.0
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/CHANGELOG.md +33 -1
- package/README.md +77 -18
- package/dist/core/constants/fea.constant.d.ts +21 -0
- package/dist/core/constants/fea.constant.js +26 -0
- package/dist/core/constants/fea.constant.js.map +1 -0
- package/dist/core/constants/frame.constant.d.ts +6 -32
- package/dist/core/constants/frame.constant.js +8 -33
- package/dist/core/constants/frame.constant.js.map +1 -1
- package/dist/core/constants/rc.constant.d.ts +8 -0
- package/dist/core/constants/rc.constant.js +10 -1
- package/dist/core/constants/rc.constant.js.map +1 -1
- package/dist/core/constants/shell.constant.d.ts +23 -0
- package/dist/core/constants/shell.constant.js +28 -0
- package/dist/core/constants/shell.constant.js.map +1 -0
- package/dist/core/errors/fea.error.d.ts +5 -0
- package/dist/core/errors/fea.error.js +9 -1
- package/dist/core/errors/fea.error.js.map +1 -1
- package/dist/core/index.d.ts +4 -2
- package/dist/core/index.js +18 -10
- package/dist/core/index.js.map +1 -1
- package/dist/esm/core/constants/fea.constant.js +23 -0
- package/dist/esm/core/constants/fea.constant.js.map +1 -0
- package/dist/esm/core/constants/frame.constant.js +7 -32
- package/dist/esm/core/constants/frame.constant.js.map +1 -1
- package/dist/esm/core/constants/rc.constant.js +9 -0
- package/dist/esm/core/constants/rc.constant.js.map +1 -1
- package/dist/esm/core/constants/shell.constant.js +25 -0
- package/dist/esm/core/constants/shell.constant.js.map +1 -0
- package/dist/esm/core/errors/fea.error.js +9 -1
- package/dist/esm/core/errors/fea.error.js.map +1 -1
- package/dist/esm/core/index.js +4 -2
- package/dist/esm/core/index.js.map +1 -1
- package/dist/esm/fea/analysis/index.js +1 -0
- package/dist/esm/fea/analysis/index.js.map +1 -1
- package/dist/esm/fea/analysis/mesh/expand-model.js +27 -44
- package/dist/esm/fea/analysis/mesh/expand-model.js.map +1 -1
- package/dist/esm/fea/analysis/mesh/member-connectivity.js +67 -0
- package/dist/esm/fea/analysis/mesh/member-connectivity.js.map +1 -0
- package/dist/esm/fea/analysis/post/envelope.js +70 -0
- package/dist/esm/fea/analysis/post/envelope.js.map +1 -1
- package/dist/esm/fea/analysis/post/present-state.js +11 -4
- package/dist/esm/fea/analysis/post/present-state.js.map +1 -1
- package/dist/esm/fea/analysis/post/wall-forces.js +299 -0
- package/dist/esm/fea/analysis/post/wall-forces.js.map +1 -0
- package/dist/esm/fea/analysis/post/wall-geometry.js +173 -0
- package/dist/esm/fea/analysis/post/wall-geometry.js.map +1 -0
- package/dist/esm/fea/analysis/solver/analysis-system.js +1 -1
- package/dist/esm/fea/analysis/solver/analysis-system.js.map +1 -1
- package/dist/esm/fea/analysis/solver/analyze.js +21 -5
- package/dist/esm/fea/analysis/solver/analyze.js.map +1 -1
- package/dist/esm/fea/analysis/solver/load-case-solver.js +4 -3
- package/dist/esm/fea/analysis/solver/load-case-solver.js.map +1 -1
- package/dist/esm/fea/analysis/validation/validate-model.js +20 -2
- package/dist/esm/fea/analysis/validation/validate-model.js.map +1 -1
- package/dist/esm/fea/analysis/validation/validate-walls.js +226 -0
- package/dist/esm/fea/analysis/validation/validate-walls.js.map +1 -0
- package/dist/esm/fea/frame/area/area-geometry.js +1 -1
- package/dist/esm/fea/frame/area/area-geometry.js.map +1 -1
- package/dist/esm/fea/frame/area/area-member-loads.js +1 -1
- package/dist/esm/fea/frame/area/area-member-loads.js.map +1 -1
- package/dist/esm/fea/frame/area/edge-members.js +1 -1
- package/dist/esm/fea/frame/area/edge-members.js.map +1 -1
- package/dist/esm/fea/frame/post/member-diagram.js +16 -4
- package/dist/esm/fea/frame/post/member-diagram.js.map +1 -1
- package/dist/esm/fea/frame/solver/nodes-along-members.js +73 -0
- package/dist/esm/fea/frame/solver/nodes-along-members.js.map +1 -0
- package/dist/esm/fea/frame/solver/system-member.js +4 -4
- package/dist/esm/fea/frame/solver/system-member.js.map +1 -1
- package/dist/esm/fea/frame/transformation/coordinate-transform.js +1 -1
- package/dist/esm/fea/frame/transformation/coordinate-transform.js.map +1 -1
- package/dist/esm/fea/frame/validation/validate-members.js +6 -2
- package/dist/esm/fea/frame/validation/validate-members.js.map +1 -1
- package/dist/esm/fea/frame/validation/validate-null-areas.js +1 -1
- package/dist/esm/fea/frame/validation/validate-null-areas.js.map +1 -1
- package/dist/esm/fea/shared/solver/auto-restraint.js +1 -1
- package/dist/esm/fea/shared/solver/auto-restraint.js.map +1 -1
- package/dist/esm/fea/shared/validation/issues.js +8 -0
- package/dist/esm/fea/shared/validation/issues.js.map +1 -1
- package/dist/esm/fea/shell/elements/membrane-quad.js +1 -1
- package/dist/esm/fea/shell/elements/shell-axes.js +2 -1
- package/dist/esm/fea/shell/elements/shell-axes.js.map +1 -1
- package/dist/esm/fea/shell/mesh/mesh-shells.js +1 -1
- package/dist/esm/fea/shell/mesh/mesh-shells.js.map +1 -1
- package/dist/esm/fea/shell/post/strip-forces.js +341 -0
- package/dist/esm/fea/shell/post/strip-forces.js.map +1 -0
- package/dist/esm/fea/shell/solver/shell-loads.js +3 -0
- package/dist/esm/fea/shell/solver/shell-loads.js.map +1 -1
- package/dist/esm/fea/shell/validation/validate-shells.js +9 -2
- package/dist/esm/fea/shell/validation/validate-shells.js.map +1 -1
- package/dist/esm/fea/shell/validation/validate-strips.js +99 -0
- package/dist/esm/fea/shell/validation/validate-strips.js.map +1 -0
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/rc/rc-section-properties.js +1 -1
- package/dist/esm/rc/rc-section-properties.js.map +1 -1
- package/dist/fea/analysis/index.d.ts +4 -2
- package/dist/fea/analysis/index.js +3 -1
- package/dist/fea/analysis/index.js.map +1 -1
- package/dist/fea/analysis/mesh/expand-model.d.ts +10 -7
- package/dist/fea/analysis/mesh/expand-model.js +28 -45
- package/dist/fea/analysis/mesh/expand-model.js.map +1 -1
- package/dist/fea/analysis/mesh/member-connectivity.d.ts +43 -0
- package/dist/fea/analysis/mesh/member-connectivity.js +72 -0
- package/dist/fea/analysis/mesh/member-connectivity.js.map +1 -0
- package/dist/fea/analysis/post/envelope.js +70 -0
- package/dist/fea/analysis/post/envelope.js.map +1 -1
- package/dist/fea/analysis/post/present-state.d.ts +8 -1
- package/dist/fea/analysis/post/present-state.js +12 -5
- package/dist/fea/analysis/post/present-state.js.map +1 -1
- package/dist/fea/analysis/post/wall-forces.d.ts +65 -0
- package/dist/fea/analysis/post/wall-forces.js +305 -0
- package/dist/fea/analysis/post/wall-forces.js.map +1 -0
- package/dist/fea/analysis/post/wall-geometry.d.ts +73 -0
- package/dist/fea/analysis/post/wall-geometry.js +188 -0
- package/dist/fea/analysis/post/wall-geometry.js.map +1 -0
- package/dist/fea/analysis/solver/analysis-system.d.ts +1 -1
- package/dist/fea/analysis/solver/analysis-system.js +2 -2
- package/dist/fea/analysis/solver/analysis-system.js.map +1 -1
- package/dist/fea/analysis/solver/analyze.d.ts +12 -3
- package/dist/fea/analysis/solver/analyze.js +21 -5
- package/dist/fea/analysis/solver/analyze.js.map +1 -1
- package/dist/fea/analysis/solver/load-case-solver.d.ts +1 -0
- package/dist/fea/analysis/solver/load-case-solver.js +5 -4
- package/dist/fea/analysis/solver/load-case-solver.js.map +1 -1
- package/dist/fea/analysis/types/model.type.d.ts +58 -1
- package/dist/fea/analysis/types/results.type.d.ts +136 -2
- package/dist/fea/analysis/validation/validate-model.d.ts +1 -1
- package/dist/fea/analysis/validation/validate-model.js +20 -2
- package/dist/fea/analysis/validation/validate-model.js.map +1 -1
- package/dist/fea/analysis/validation/validate-walls.d.ts +35 -0
- package/dist/fea/analysis/validation/validate-walls.js +230 -0
- package/dist/fea/analysis/validation/validate-walls.js.map +1 -0
- package/dist/fea/frame/area/area-geometry.js +5 -5
- package/dist/fea/frame/area/area-geometry.js.map +1 -1
- package/dist/fea/frame/area/area-member-loads.js +7 -7
- package/dist/fea/frame/area/area-member-loads.js.map +1 -1
- package/dist/fea/frame/area/edge-members.js +2 -2
- package/dist/fea/frame/area/edge-members.js.map +1 -1
- package/dist/fea/frame/index.d.ts +1 -1
- package/dist/fea/frame/post/member-diagram.d.ts +14 -5
- package/dist/fea/frame/post/member-diagram.js +18 -5
- package/dist/fea/frame/post/member-diagram.js.map +1 -1
- package/dist/fea/frame/solver/nodes-along-members.d.ts +31 -0
- package/dist/fea/frame/solver/nodes-along-members.js +77 -0
- package/dist/fea/frame/solver/nodes-along-members.js.map +1 -0
- package/dist/fea/frame/solver/system-member.d.ts +6 -5
- package/dist/fea/frame/solver/system-member.js +4 -4
- package/dist/fea/frame/solver/system-member.js.map +1 -1
- package/dist/fea/frame/transformation/coordinate-transform.js +2 -2
- package/dist/fea/frame/transformation/coordinate-transform.js.map +1 -1
- package/dist/fea/frame/types/model.type.d.ts +6 -0
- package/dist/fea/frame/types/results.type.d.ts +20 -0
- package/dist/fea/frame/validation/validate-members.d.ts +2 -2
- package/dist/fea/frame/validation/validate-members.js +6 -2
- package/dist/fea/frame/validation/validate-members.js.map +1 -1
- package/dist/fea/frame/validation/validate-null-areas.js +2 -2
- package/dist/fea/frame/validation/validate-null-areas.js.map +1 -1
- package/dist/fea/shared/solver/auto-restraint.js +3 -3
- package/dist/fea/shared/solver/auto-restraint.js.map +1 -1
- package/dist/fea/shared/validation/issues.js +8 -0
- package/dist/fea/shared/validation/issues.js.map +1 -1
- package/dist/fea/shell/elements/membrane-quad.js +2 -2
- package/dist/fea/shell/elements/shell-axes.js +6 -5
- package/dist/fea/shell/elements/shell-axes.js.map +1 -1
- package/dist/fea/shell/index.d.ts +2 -2
- package/dist/fea/shell/mesh/mesh-shells.js +2 -2
- package/dist/fea/shell/mesh/mesh-shells.js.map +1 -1
- package/dist/fea/shell/post/strip-forces.d.ts +69 -0
- package/dist/fea/shell/post/strip-forces.js +349 -0
- package/dist/fea/shell/post/strip-forces.js.map +1 -0
- package/dist/fea/shell/solver/shell-loads.d.ts +3 -1
- package/dist/fea/shell/solver/shell-loads.js +3 -0
- package/dist/fea/shell/solver/shell-loads.js.map +1 -1
- package/dist/fea/shell/types/model.type.d.ts +31 -0
- package/dist/fea/shell/types/results.type.d.ts +54 -0
- package/dist/fea/shell/validation/validate-shells.d.ts +7 -2
- package/dist/fea/shell/validation/validate-shells.js +9 -2
- package/dist/fea/shell/validation/validate-shells.js.map +1 -1
- package/dist/fea/shell/validation/validate-strips.d.ts +11 -0
- package/dist/fea/shell/validation/validate-strips.js +103 -0
- package/dist/fea/shell/validation/validate-strips.js.map +1 -0
- package/dist/index.d.ts +3 -3
- package/dist/index.js +9 -2
- package/dist/index.js.map +1 -1
- package/dist/rc/rc-section-properties.js +4 -4
- package/dist/rc/rc-section-properties.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateStrips = void 0;
|
|
4
|
+
const fea_constant_1 = require("../../../core/constants/fea.constant");
|
|
5
|
+
const fea_error_1 = require("../../../core/errors/fea.error");
|
|
6
|
+
const issues_1 = require("../../shared/validation/issues");
|
|
7
|
+
/**
|
|
8
|
+
* Checks the model's strips: unique ids, finite points, widths, normal and spacing, and the
|
|
9
|
+
* geometry (at least 2 points in one plane normal to `normal`, no zero-length segment, no
|
|
10
|
+
* segment turning straight back, widths not negative and not both 0).
|
|
11
|
+
*
|
|
12
|
+
* @param strips - The model's strips
|
|
13
|
+
* @returns Every problem found (codes 303, 314 and 330), in model order, with `stripId`
|
|
14
|
+
*/
|
|
15
|
+
const validateStrips = (strips) => {
|
|
16
|
+
const issues = [];
|
|
17
|
+
const add = (std, details) => issues.push((0, issues_1.modelIssue)(std, details));
|
|
18
|
+
const ids = strips.map((s) => s.id);
|
|
19
|
+
for (const stripId of new Set(ids.filter((id, i) => ids.indexOf(id) !== i))) {
|
|
20
|
+
add(fea_error_1.FeaErrors.DUPLICATE_ID, { stripId, field: "id" });
|
|
21
|
+
}
|
|
22
|
+
for (const strip of strips) {
|
|
23
|
+
const at = { stripId: strip.id };
|
|
24
|
+
let pointsOk = true;
|
|
25
|
+
const points = strip.points;
|
|
26
|
+
if (!Array.isArray(points) || points.length < 2) {
|
|
27
|
+
add(fea_error_1.FeaErrors.INVALID_STRIP_GEOMETRY, { ...at, field: "points" });
|
|
28
|
+
pointsOk = false;
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
points.forEach((p, i) => {
|
|
32
|
+
for (const key of ["x", "y", "z"]) {
|
|
33
|
+
const value = p?.[key];
|
|
34
|
+
if (!(0, issues_1.isFiniteNumber)(value)) {
|
|
35
|
+
add(fea_error_1.FeaErrors.INVALID_INPUT_VALUE, { ...at, field: `points[${i}].${key}` });
|
|
36
|
+
pointsOk = false;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
let normal = [0, 0, 1];
|
|
42
|
+
const given = strip.normal;
|
|
43
|
+
if (given !== undefined) {
|
|
44
|
+
if (!Array.isArray(given) || given.length !== 3 || !given.every(issues_1.isFiniteNumber)) {
|
|
45
|
+
add(fea_error_1.FeaErrors.INVALID_INPUT_VALUE, { ...at, field: "normal" });
|
|
46
|
+
normal = undefined;
|
|
47
|
+
}
|
|
48
|
+
else if (Math.hypot(given[0], given[1], given[2]) === 0) {
|
|
49
|
+
add(fea_error_1.FeaErrors.INVALID_STRIP_GEOMETRY, { ...at, field: "normal" });
|
|
50
|
+
normal = undefined;
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
normal = given;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
let widthsOk = true;
|
|
57
|
+
for (const field of ["widthLeft", "widthRight"]) {
|
|
58
|
+
const value = strip[field];
|
|
59
|
+
if (!(0, issues_1.isFiniteNumber)(value)) {
|
|
60
|
+
add(fea_error_1.FeaErrors.INVALID_INPUT_VALUE, { ...at, field });
|
|
61
|
+
widthsOk = false;
|
|
62
|
+
}
|
|
63
|
+
else if (value < 0) {
|
|
64
|
+
add(fea_error_1.FeaErrors.INVALID_STRIP_GEOMETRY, { ...at, field });
|
|
65
|
+
widthsOk = false;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
if (widthsOk && strip.widthLeft + strip.widthRight === 0) {
|
|
69
|
+
add(fea_error_1.FeaErrors.INVALID_STRIP_GEOMETRY, { ...at, field: "widthLeft" });
|
|
70
|
+
}
|
|
71
|
+
const spacing = strip.maxSpacing;
|
|
72
|
+
if (spacing !== undefined && !((0, issues_1.isFiniteNumber)(spacing) && spacing > 0)) {
|
|
73
|
+
add(fea_error_1.FeaErrors.INVALID_INPUT_VALUE, { ...at, field: "maxSpacing" });
|
|
74
|
+
}
|
|
75
|
+
if (!pointsOk || !normal)
|
|
76
|
+
continue;
|
|
77
|
+
const length = Math.hypot(normal[0], normal[1], normal[2]);
|
|
78
|
+
const n = normal.map((c) => c / length);
|
|
79
|
+
const xyz = strip.points.map((p) => [p.x, p.y, p.z]);
|
|
80
|
+
const along = xyz.slice(1).map((q, i) => {
|
|
81
|
+
const d = [0, 1, 2].map((k) => q[k] - xyz[i][k]);
|
|
82
|
+
const out = d[0] * n[0] + d[1] * n[1] + d[2] * n[2];
|
|
83
|
+
return [d[0] - out * n[0], d[1] - out * n[1], d[2] - out * n[2]];
|
|
84
|
+
});
|
|
85
|
+
const lengths = along.map((d) => Math.hypot(d[0], d[1], d[2]));
|
|
86
|
+
const total = lengths.reduce((sum, l) => sum + l, 0);
|
|
87
|
+
const tolerance = fea_constant_1.AREA_GEOMETRY_TOLERANCE * total;
|
|
88
|
+
const offPlane = xyz.some((p) => Math.abs((p[0] - xyz[0][0]) * n[0] + (p[1] - xyz[0][1]) * n[1] + (p[2] - xyz[0][2]) * n[2]) > tolerance);
|
|
89
|
+
const zeroSegment = lengths.some((l) => !(l > tolerance));
|
|
90
|
+
const foldsBack = !zeroSegment &&
|
|
91
|
+
along.slice(1).some((d, i) => {
|
|
92
|
+
const e = along[i];
|
|
93
|
+
const cos = (d[0] * e[0] + d[1] * e[1] + d[2] * e[2]) / (lengths[i] * lengths[i + 1]);
|
|
94
|
+
return cos <= -1 + fea_constant_1.AREA_GEOMETRY_TOLERANCE;
|
|
95
|
+
});
|
|
96
|
+
if (offPlane || zeroSegment || foldsBack) {
|
|
97
|
+
add(fea_error_1.FeaErrors.INVALID_STRIP_GEOMETRY, { ...at, field: "points" });
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
return issues;
|
|
101
|
+
};
|
|
102
|
+
exports.validateStrips = validateStrips;
|
|
103
|
+
//# sourceMappingURL=validate-strips.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-strips.js","sourceRoot":"","sources":["../../../../src/fea/shell/validation/validate-strips.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
export { rectBeamMomentCapacity, rectBeamBarLayout, concreteShearCapacity, stirrupShearCapacity, checkStirrupRequirement, concreteBeta, concreteElasticModulus, psiToMpa, rectBeamToSectionProperties, } from "./rc";
|
|
2
2
|
export type { SectionPropertiesOptions } from "./rc";
|
|
3
|
-
export { analyze, createAnalysis, validateModel, distributeAreaLoads, beam3dLocalStiffness, beam3dLocalStiffnessRightHanded, memberAxes, memberDemandEnvelope, } from "./fea";
|
|
4
|
-
export type { AnalyzeOptions, Analysis, FeaId, FeaNode, DofRestraint, Restraint, LineRestraint, DofRelease, MemberEndRelease, Member, NodalLoad, LoadDirection, UniformMemberLoad, PointMemberLoad, TrapezoidalMemberLoad, TorqueMemberLoad, MemberLoad, AreaDistribution, NullArea, ShellType, ShellSection, ShellModifiers, ShellArea, ShellMesh, AreaLoadDirection, AreaLoad, LoadCaseType, LoadCase, CombinationTerm, LoadCombination, FeaModel, NodalDisplacement, NodalReaction, MemberEndForce, MemberEndForces, ReleaseDeformation, MemberReleaseDeformations, AutoRestrainedDof, MemberStation, StationComponent, ExtremeValue, MemberDiagram, ShellCornerForces, ShellForceComponent, ShellElementForces, FeaMesh, GoverningValue, GoverningExtremeValue, Bound, FeaCaseResult, FeaEnvelope, FeaResult, MemberDemandEnvelope, DemandEnvelopeOptions, } from "./fea";
|
|
3
|
+
export { analyze, createAnalysis, validateModel, distributeAreaLoads, beam3dLocalStiffness, beam3dLocalStiffnessRightHanded, memberAxes, memberDemandEnvelope, memberConnectivity, } from "./fea";
|
|
4
|
+
export type { AnalyzeOptions, Analysis, FeaId, FeaNode, DofRestraint, Restraint, LineRestraint, DofRelease, MemberEndRelease, Member, NodalLoad, LoadDirection, UniformMemberLoad, PointMemberLoad, TrapezoidalMemberLoad, TorqueMemberLoad, MemberLoad, AreaDistribution, NullArea, ShellType, ShellSection, ShellModifiers, ShellArea, ShellMesh, ShellStrip, StripPoint, WallPier, WallSpandrel, AreaLoadDirection, AreaLoad, LoadCaseType, LoadCase, CombinationTerm, LoadCombination, FeaModel, NodalDisplacement, NodalReaction, MemberEndForce, MemberEndForces, ReleaseDeformation, MemberReleaseDeformations, AutoRestrainedDof, MemberStation, StationComponent, ExtremeValue, MemberDiagram, MemberIntermediateNode, MemberNearMissNode, MemberConnectivity, ShellCornerForces, ShellForceComponent, ShellElementForces, FeaMesh, StripResultants, StripForceComponent, StripStation, StripExtremeValue, StripForces, WallResultants, WallForceComponent, WallSectionLeg, WallSectionMember, WallCutSection, PierCutFace, PierCut, PierForces, SpandrelCutFace, SpandrelCut, SpandrelForces, GoverningValue, GoverningExtremeValue, Bound, FeaCaseResult, FeaEnvelope, FeaResult, MemberDemandEnvelope, DemandEnvelopeOptions, } from "./fea";
|
|
5
5
|
export { analyzeFrame, createFrameAnalysis, validateFrameModel } from "./fea";
|
|
6
6
|
export type { AnalyzeFrameOptions, FrameAnalysis, FrameId, FrameNode, FrameModel, FrameMesh, FrameCaseResult, FrameEnvelope, FrameResult, } from "./fea";
|
|
7
7
|
export { calculateSteelJacketedBeamMomentCapacity, plateInterfaceShearFlow, boltShearCapacity, plateInterfaceBoltRequirement, sidePlateShearCapacityByWebYielding, sidePlateShearCapacityByTensionTie, compareSidePlateShearCapacity, } from "./strengthening";
|
|
8
8
|
export type { RectBeamSection, RectSinglyBeamSection, RectDoublyBeamSection, RectShearSection, StirrupShearSection, ShearReinforcementCheckInput, RebarGroupInput, RectBeamBarLayoutInput, SteelJacketedProps, SectionState, PlateShearFlowInput, BoltProps, PlateInterfaceBoltInput, SidePlateConfiguration, SidePlateAnchorage, SidePlateShearProps, SectionProperties, FeaErrorDetails, FeaModelIssue, FrameErrorDetails, FrameModelIssue, Warnings, calculationResult, unit, } from "./core";
|
|
9
|
-
export { isSinglyReinforced, hasTopPlate, hasBottomPlate, hasSidePlate, FLEXURAL_STRENGTH_REDUCTION_FACTOR, CONCRETE_ULTIMATE_STRAIN, SHEAR_STRENGTH_REDUCTION_FACTOR, ANCHOR_SHEAR_STRENGTH_REDUCTION_FACTOR, MAX_PLATE_BOLT_SPACING, PLATE_SHEAR_YIELD_COEFFICIENT, SIDE_PLATE_EFFECTIVE_STRAIN_LIMIT, SIDE_PLATE_REDUCTION_FACTOR_PSI, CONCRETE_POISSON_RATIO, CONCRETE_UNIT_WEIGHT, BEAM_INERTIA_MODIFIER, COLUMN_INERTIA_MODIFIER, VERTICAL_MEMBER_TOLERANCE, SINGULARITY_TOLERANCE, EQUILIBRIUM_TOLERANCE, AREA_GEOMETRY_TOLERANCE, SHELL_WARPING_LIMIT, RCDesignError, Errors, FeaError, FeaErrors, FrameAnalysisError, FrameErrors, } from "./core";
|
|
9
|
+
export { isSinglyReinforced, hasTopPlate, hasBottomPlate, hasSidePlate, FLEXURAL_STRENGTH_REDUCTION_FACTOR, CONCRETE_ULTIMATE_STRAIN, SHEAR_STRENGTH_REDUCTION_FACTOR, ANCHOR_SHEAR_STRENGTH_REDUCTION_FACTOR, MAX_PLATE_BOLT_SPACING, PLATE_SHEAR_YIELD_COEFFICIENT, SIDE_PLATE_EFFECTIVE_STRAIN_LIMIT, SIDE_PLATE_REDUCTION_FACTOR_PSI, CONCRETE_POISSON_RATIO, CONCRETE_UNIT_WEIGHT, BEAM_INERTIA_MODIFIER, COLUMN_INERTIA_MODIFIER, VERTICAL_MEMBER_TOLERANCE, SINGULARITY_TOLERANCE, EQUILIBRIUM_TOLERANCE, AREA_GEOMETRY_TOLERANCE, WALL_VERTICAL_TOLERANCE, WALL_CUT_TOLERANCE, SHELL_WARPING_LIMIT, STRIP_PLANE_TOLERANCE, STRIP_DEFAULT_DIVISIONS, NODE_NEAR_MEMBER_RATIO, NODE_NEAR_MEMBER_MAX_DISTANCE, RCDesignError, Errors, FeaError, FeaErrors, FrameAnalysisError, FrameErrors, } from "./core";
|
|
10
10
|
export { solveQuadratic, roundToDecimalPlaces, mergeWarnings, zeros, identity, transpose, matMul, matVec, choleskyFactor, choleskySolveFactored, choleskySolve, solveLinearSystem, createSkyline, skylineAdd, skylineGet, skylineSize, skylineFactor, skylineSolve, reverseCuthillMcKee, } from "./utils";
|
|
11
11
|
export type { Matrix, SkylineMatrix } from "./utils";
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
exports.reverseCuthillMcKee = exports.skylineSolve = exports.skylineFactor = exports.skylineSize = exports.skylineGet = exports.skylineAdd = exports.createSkyline = exports.solveLinearSystem = exports.choleskySolve = exports.choleskySolveFactored = exports.choleskyFactor = exports.matVec = exports.matMul = exports.transpose = exports.identity = exports.zeros = exports.mergeWarnings = exports.roundToDecimalPlaces = exports.solveQuadratic = exports.FrameErrors = exports.FrameAnalysisError = exports.FeaErrors = exports.FeaError = void 0;
|
|
3
|
+
exports.WALL_CUT_TOLERANCE = exports.WALL_VERTICAL_TOLERANCE = exports.AREA_GEOMETRY_TOLERANCE = exports.EQUILIBRIUM_TOLERANCE = exports.SINGULARITY_TOLERANCE = exports.VERTICAL_MEMBER_TOLERANCE = exports.COLUMN_INERTIA_MODIFIER = exports.BEAM_INERTIA_MODIFIER = exports.CONCRETE_UNIT_WEIGHT = exports.CONCRETE_POISSON_RATIO = exports.SIDE_PLATE_REDUCTION_FACTOR_PSI = exports.SIDE_PLATE_EFFECTIVE_STRAIN_LIMIT = exports.PLATE_SHEAR_YIELD_COEFFICIENT = exports.MAX_PLATE_BOLT_SPACING = exports.ANCHOR_SHEAR_STRENGTH_REDUCTION_FACTOR = exports.SHEAR_STRENGTH_REDUCTION_FACTOR = exports.CONCRETE_ULTIMATE_STRAIN = exports.FLEXURAL_STRENGTH_REDUCTION_FACTOR = exports.hasSidePlate = exports.hasBottomPlate = exports.hasTopPlate = exports.isSinglyReinforced = exports.compareSidePlateShearCapacity = exports.sidePlateShearCapacityByTensionTie = exports.sidePlateShearCapacityByWebYielding = exports.plateInterfaceBoltRequirement = exports.boltShearCapacity = exports.plateInterfaceShearFlow = exports.calculateSteelJacketedBeamMomentCapacity = exports.validateFrameModel = exports.createFrameAnalysis = exports.analyzeFrame = exports.memberConnectivity = exports.memberDemandEnvelope = exports.memberAxes = exports.beam3dLocalStiffnessRightHanded = exports.beam3dLocalStiffness = exports.distributeAreaLoads = exports.validateModel = exports.createAnalysis = exports.analyze = exports.rectBeamToSectionProperties = exports.psiToMpa = exports.concreteElasticModulus = exports.concreteBeta = exports.checkStirrupRequirement = exports.stirrupShearCapacity = exports.concreteShearCapacity = exports.rectBeamBarLayout = exports.rectBeamMomentCapacity = void 0;
|
|
4
|
+
exports.reverseCuthillMcKee = exports.skylineSolve = exports.skylineFactor = exports.skylineSize = exports.skylineGet = exports.skylineAdd = exports.createSkyline = exports.solveLinearSystem = exports.choleskySolve = exports.choleskySolveFactored = exports.choleskyFactor = exports.matVec = exports.matMul = exports.transpose = exports.identity = exports.zeros = exports.mergeWarnings = exports.roundToDecimalPlaces = exports.solveQuadratic = exports.FrameErrors = exports.FrameAnalysisError = exports.FeaErrors = exports.FeaError = exports.Errors = exports.RCDesignError = exports.NODE_NEAR_MEMBER_MAX_DISTANCE = exports.NODE_NEAR_MEMBER_RATIO = exports.STRIP_DEFAULT_DIVISIONS = exports.STRIP_PLANE_TOLERANCE = exports.SHELL_WARPING_LIMIT = void 0;
|
|
5
5
|
// RC Beam Design
|
|
6
6
|
var rc_1 = require("./rc");
|
|
7
7
|
Object.defineProperty(exports, "rectBeamMomentCapacity", { enumerable: true, get: function () { return rc_1.rectBeamMomentCapacity; } });
|
|
@@ -23,6 +23,7 @@ Object.defineProperty(exports, "beam3dLocalStiffness", { enumerable: true, get:
|
|
|
23
23
|
Object.defineProperty(exports, "beam3dLocalStiffnessRightHanded", { enumerable: true, get: function () { return fea_1.beam3dLocalStiffnessRightHanded; } });
|
|
24
24
|
Object.defineProperty(exports, "memberAxes", { enumerable: true, get: function () { return fea_1.memberAxes; } });
|
|
25
25
|
Object.defineProperty(exports, "memberDemandEnvelope", { enumerable: true, get: function () { return fea_1.memberDemandEnvelope; } });
|
|
26
|
+
Object.defineProperty(exports, "memberConnectivity", { enumerable: true, get: function () { return fea_1.memberConnectivity; } });
|
|
26
27
|
// Deprecated FEA names, removed in 4.0.0
|
|
27
28
|
var fea_2 = require("./fea");
|
|
28
29
|
Object.defineProperty(exports, "analyzeFrame", { enumerable: true, get: function () { return fea_2.analyzeFrame; } });
|
|
@@ -58,7 +59,13 @@ Object.defineProperty(exports, "VERTICAL_MEMBER_TOLERANCE", { enumerable: true,
|
|
|
58
59
|
Object.defineProperty(exports, "SINGULARITY_TOLERANCE", { enumerable: true, get: function () { return core_1.SINGULARITY_TOLERANCE; } });
|
|
59
60
|
Object.defineProperty(exports, "EQUILIBRIUM_TOLERANCE", { enumerable: true, get: function () { return core_1.EQUILIBRIUM_TOLERANCE; } });
|
|
60
61
|
Object.defineProperty(exports, "AREA_GEOMETRY_TOLERANCE", { enumerable: true, get: function () { return core_1.AREA_GEOMETRY_TOLERANCE; } });
|
|
62
|
+
Object.defineProperty(exports, "WALL_VERTICAL_TOLERANCE", { enumerable: true, get: function () { return core_1.WALL_VERTICAL_TOLERANCE; } });
|
|
63
|
+
Object.defineProperty(exports, "WALL_CUT_TOLERANCE", { enumerable: true, get: function () { return core_1.WALL_CUT_TOLERANCE; } });
|
|
61
64
|
Object.defineProperty(exports, "SHELL_WARPING_LIMIT", { enumerable: true, get: function () { return core_1.SHELL_WARPING_LIMIT; } });
|
|
65
|
+
Object.defineProperty(exports, "STRIP_PLANE_TOLERANCE", { enumerable: true, get: function () { return core_1.STRIP_PLANE_TOLERANCE; } });
|
|
66
|
+
Object.defineProperty(exports, "STRIP_DEFAULT_DIVISIONS", { enumerable: true, get: function () { return core_1.STRIP_DEFAULT_DIVISIONS; } });
|
|
67
|
+
Object.defineProperty(exports, "NODE_NEAR_MEMBER_RATIO", { enumerable: true, get: function () { return core_1.NODE_NEAR_MEMBER_RATIO; } });
|
|
68
|
+
Object.defineProperty(exports, "NODE_NEAR_MEMBER_MAX_DISTANCE", { enumerable: true, get: function () { return core_1.NODE_NEAR_MEMBER_MAX_DISTANCE; } });
|
|
62
69
|
Object.defineProperty(exports, "RCDesignError", { enumerable: true, get: function () { return core_1.RCDesignError; } });
|
|
63
70
|
Object.defineProperty(exports, "Errors", { enumerable: true, get: function () { return core_1.Errors; } });
|
|
64
71
|
Object.defineProperty(exports, "FeaError", { enumerable: true, get: function () { return core_1.FeaError; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAAA,iBAAiB;AACjB,2BAUc;AATZ,4GAAA,sBAAsB,OAAA;AACtB,uGAAA,iBAAiB,OAAA;AACjB,2GAAA,qBAAqB,OAAA;AACrB,0GAAA,oBAAoB,OAAA;AACpB,6GAAA,uBAAuB,OAAA;AACvB,kGAAA,YAAY,OAAA;AACZ,4GAAA,sBAAsB,OAAA;AACtB,8FAAA,QAAQ,OAAA;AACR,iHAAA,2BAA2B,OAAA;AAI7B,iCAAiC;AACjC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAAA,iBAAiB;AACjB,2BAUc;AATZ,4GAAA,sBAAsB,OAAA;AACtB,uGAAA,iBAAiB,OAAA;AACjB,2GAAA,qBAAqB,OAAA;AACrB,0GAAA,oBAAoB,OAAA;AACpB,6GAAA,uBAAuB,OAAA;AACvB,kGAAA,YAAY,OAAA;AACZ,4GAAA,sBAAsB,OAAA;AACtB,8FAAA,QAAQ,OAAA;AACR,iHAAA,2BAA2B,OAAA;AAI7B,iCAAiC;AACjC,6BAUe;AATb,8FAAA,OAAO,OAAA;AACP,qGAAA,cAAc,OAAA;AACd,oGAAA,aAAa,OAAA;AACb,0GAAA,mBAAmB,OAAA;AACnB,2GAAA,oBAAoB,OAAA;AACpB,sHAAA,+BAA+B,OAAA;AAC/B,iGAAA,UAAU,OAAA;AACV,2GAAA,oBAAoB,OAAA;AACpB,yGAAA,kBAAkB,OAAA;AAiFpB,yCAAyC;AACzC,6BAA8E;AAArE,mGAAA,YAAY,OAAA;AAAE,0GAAA,mBAAmB,OAAA;AAAE,yGAAA,kBAAkB,OAAA;AAa9D,gBAAgB;AAChB,iDAQyB;AAPvB,yIAAA,wCAAwC,OAAA;AACxC,wHAAA,uBAAuB,OAAA;AACvB,kHAAA,iBAAiB,OAAA;AACjB,8HAAA,6BAA6B,OAAA;AAC7B,oIAAA,mCAAmC,OAAA;AACnC,mIAAA,kCAAkC,OAAA;AAClC,8HAAA,6BAA6B,OAAA;AA+B/B,+BAkCgB;AAjCd,0GAAA,kBAAkB,OAAA;AAClB,mGAAA,WAAW,OAAA;AACX,sGAAA,cAAc,OAAA;AACd,oGAAA,YAAY,OAAA;AACZ,0HAAA,kCAAkC,OAAA;AAClC,gHAAA,wBAAwB,OAAA;AACxB,uHAAA,+BAA+B,OAAA;AAC/B,8HAAA,sCAAsC,OAAA;AACtC,8GAAA,sBAAsB,OAAA;AACtB,qHAAA,6BAA6B,OAAA;AAC7B,yHAAA,iCAAiC,OAAA;AACjC,uHAAA,+BAA+B,OAAA;AAC/B,8GAAA,sBAAsB,OAAA;AACtB,4GAAA,oBAAoB,OAAA;AACpB,6GAAA,qBAAqB,OAAA;AACrB,+GAAA,uBAAuB,OAAA;AACvB,iHAAA,yBAAyB,OAAA;AACzB,6GAAA,qBAAqB,OAAA;AACrB,6GAAA,qBAAqB,OAAA;AACrB,+GAAA,uBAAuB,OAAA;AACvB,+GAAA,uBAAuB,OAAA;AACvB,0GAAA,kBAAkB,OAAA;AAClB,2GAAA,mBAAmB,OAAA;AACnB,6GAAA,qBAAqB,OAAA;AACrB,+GAAA,uBAAuB,OAAA;AACvB,8GAAA,sBAAsB,OAAA;AACtB,qHAAA,6BAA6B,OAAA;AAC7B,qGAAA,aAAa,OAAA;AACb,8FAAA,MAAM,OAAA;AACN,gGAAA,QAAQ,OAAA;AACR,iGAAA,SAAS,OAAA;AACT,0GAAA,kBAAkB,OAAA;AAClB,mGAAA,WAAW,OAAA;AAGb,YAAY;AACZ,iCAoBiB;AAnBf,uGAAA,cAAc,OAAA;AACd,6GAAA,oBAAoB,OAAA;AACpB,sGAAA,aAAa,OAAA;AACb,8FAAA,KAAK,OAAA;AACL,iGAAA,QAAQ,OAAA;AACR,kGAAA,SAAS,OAAA;AACT,+FAAA,MAAM,OAAA;AACN,+FAAA,MAAM,OAAA;AACN,uGAAA,cAAc,OAAA;AACd,8GAAA,qBAAqB,OAAA;AACrB,sGAAA,aAAa,OAAA;AACb,0GAAA,iBAAiB,OAAA;AACjB,sGAAA,aAAa,OAAA;AACb,mGAAA,UAAU,OAAA;AACV,mGAAA,UAAU,OAAA;AACV,oGAAA,WAAW,OAAA;AACX,sGAAA,aAAa,OAAA;AACb,qGAAA,YAAY,OAAA;AACZ,4GAAA,mBAAmB,OAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.rectBeamToSectionProperties = void 0;
|
|
4
|
-
const
|
|
4
|
+
const rc_constant_1 = require("../core/constants/rc.constant");
|
|
5
5
|
const general_1 = require("./general");
|
|
6
6
|
/**
|
|
7
7
|
* Saint-Venant torsion constant of a solid rectangle:
|
|
@@ -28,9 +28,9 @@ const rectBeamToSectionProperties = (section, options = {}) => {
|
|
|
28
28
|
const warnings = [];
|
|
29
29
|
const member = options.member ?? "beam";
|
|
30
30
|
const modifier = options.inertiaModifier ??
|
|
31
|
-
(member === "beam" ?
|
|
32
|
-
const nu = options.poissonRatio ??
|
|
33
|
-
const unitWeight = options.unitWeight ??
|
|
31
|
+
(member === "beam" ? rc_constant_1.BEAM_INERTIA_MODIFIER : member === "column" ? rc_constant_1.COLUMN_INERTIA_MODIFIER : 1);
|
|
32
|
+
const nu = options.poissonRatio ?? rc_constant_1.CONCRETE_POISSON_RATIO;
|
|
33
|
+
const unitWeight = options.unitWeight ?? rc_constant_1.CONCRETE_UNIT_WEIGHT;
|
|
34
34
|
const { fc_, b, h } = section;
|
|
35
35
|
if (modifier === 1) {
|
|
36
36
|
warnings.push({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rc-section-properties.js","sourceRoot":"","sources":["../../src/rc/rc-section-properties.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"rc-section-properties.js","sourceRoot":"","sources":["../../src/rc/rc-section-properties.ts"],"names":[],"mappings":";;;AAAA,iEAKyC;AAKzC,uCAAmD;AAanD;;;GAGG;AACH,MAAM,wBAAwB,GAAG,CAAC,CAAS,EAAE,CAAS,EAAU,EAAE;IAChE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACzB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACzB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9E,CAAC,CAAC;AAEF;;;;;;;;;;;GAWG;AACI,MAAM,2BAA2B,GAAG,CACzC,OAAiD,EACjD,UAAoC,EAAE,EACtC,EAAE;IACF,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC;IACxC,MAAM,QAAQ,GACZ,OAAO,CAAC,eAAe;QACvB,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,mCAAqB,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,qCAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClG,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,IAAI,oCAAsB,CAAC;IAC1D,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,kCAAoB,CAAC;IAC9D,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC;IAE9B,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACnB,QAAQ,CAAC,IAAI,CAAC;YACZ,SAAS,EAAE,sBAAsB;YACjC,OAAO,EACL,+IAA+I;SAClJ,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,GAAG,IAAA,gCAAsB,EAAC,GAAG,CAAC,CAAC;IACtC,MAAM,iBAAiB,GAAsB;QAC3C,CAAC;QACD,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QACrB,CAAC,EAAE,CAAC,GAAG,CAAC;QACR,GAAG,EAAE,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE;QACjC,GAAG,EAAE,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE;QACjC,CAAC,EAAE,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC;QACjC,UAAU;KACX,CAAC;IAEF,OAAO;QACL,iBAAiB;QACjB,kBAAkB,EAAE,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,EAAE,UAAU,EAAE;QAC/E,IAAI,EAAE,YAAY;QAClB,QAAQ;KACT,CAAC;AACJ,CAAC,CAAC;AAtCW,QAAA,2BAA2B,+BAsCtC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theerapat-s28/ts-structural-eng-tools",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.0",
|
|
4
4
|
"description": "Headless structural analysis and design engine for TypeScript: 3D frame analysis (direct stiffness method), RC beam design per ACI 318-19 and strengthening methods",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
"vitest": "^3.0.0"
|
|
92
92
|
},
|
|
93
93
|
"scripts": {
|
|
94
|
-
"dev": "ts-node -r tsconfig-paths/register examples/basic-usage.ts",
|
|
94
|
+
"dev": "ts-node -r tsconfig-paths/register examples/EX-0001-basic-usage/basic-usage.ts",
|
|
95
95
|
"build": "rm -rf dist && tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && tsc -p tsconfig.esm.json && tsc-alias -p tsconfig.esm.json --resolve-full-paths && node -e \"require('fs').writeFileSync('dist/esm/package.json', JSON.stringify({ type: 'module' }))\"",
|
|
96
96
|
"lint": "eslint src/",
|
|
97
97
|
"lint:fix": "eslint src/ --fix",
|