FEMaster 2.7.0
Keywords [--format femaster]
- Added
*PART,*END PART,*ASSEMBLY,*END ASSEMBLY,*INSTANCEand*END INSTANCEfor defining reusable Parts and assembling transformed Instances. - Added
*ELASTIC, TYPE=ENGINEERINGCONSTANTSusingE1, E2, E3, ν12, ν13, ν23, G12, G13, G23. - Adjusted
*ELASTIC, TYPE=ORTHOTROPICfrom engineering constants to stiffness coefficientsD1111, D1122, D2222, D1133, D2233, D3333, D1212, D1313, D2323. - Adjusted the orthotropic engineering-constant order to
E1, E2, E3, ν12, ν13, ν23, G12, G13, G23. - Adjusted
*INSTANCEto use Abaqus-compatible translation and axis-angle rotation syntax. - Adjusted section definitions so they may appear before their referenced materials and profiles.
- Adjusted
*NSET,*ELSETand*SURFACEto support Part-local, Instance-qualified and assembly-level entities. - Removed the old node, element and surface counting stage and the associated dependence on the highest entity ID.
Keywords [--format abaqus]
- Added support for
*PART,*END PART,*ASSEMBLY,*END ASSEMBLY,*INSTANCEand*END INSTANCE. - Added support for
*NODE,*ELEMENT,*NSET,*ELSETand*SURFACE. - Added support for
*MATERIAL,*DENSITY,*ELASTIC,*HYPERELASTIC,*EXPANSIONand*ORIENTATION. - Added support for
*SOLID SECTIONand*SHELL SECTION. - Added support for
*TRANSFORMand*AMPLITUDE. - Added support for
*CLOAD,*BOUNDARY,*DLOADand*DSLOAD. - Added support for linear static, nonlinear static and Riks procedures through
*STEPand*STATIC. - Added support for eigenfrequency extraction through
*FREQUENCY. - Added support for linear buckling through
*BUCKLE. - Added support for direct implicit transient dynamics through
*DYNAMIC, DIRECT. - Added support for direct steady-state harmonic analysis.
- Added
*NODE FILE,*EL FILE,*NODE PRINTand*EL PRINT; these are accepted and ignored because FEMaster controls result output itself. - Adjusted
*SOLID SECTIONso continuum sections no longer require a data line, while truss sections interpret the supplied value as cross-sectional area. - Adjusted
*BOUNDARYto support constant non-zero prescribed values outside an analysis step. - Adjusted
*STEPhandling ofNLGEOMto support bareNLGEOMas well asNLGEOM=YES,NLGEOM=NOandNLGEOM=OFF. - Adjusted section definitions so they may appear before their referenced materials and profiles.
Parts & Instances
- Added reusable Parts containing local nodes, elements, sets, surfaces and section assignments, with sparse local IDs supported.
- Added Instances that reference a Part and apply rigid translations and rotations without duplicating its topology.
- Added a compile stage that expands Parts and Instances into the dense solver model while retaining local-to-global mappings.
- Adjusted models without explicit Parts or Instances to use an implicit default Part and Instance, preserving the previous simple workflow.
- Adjusted internal node and element numbering to be generated during compilation instead of being tied directly to input IDs.
- Adjusted Instance transformations to also transform orientations and coordinate systems associated with the instantiated geometry.
Result Output
- Adjusted
.resoutput from dense solver indices to semantic entity IDs; the default Instance keeps IDs such as17, while explicit Instances use identifiers such asbolt.17. - Adjusted
.reselement IDs consistently across element, element-nodal, integration-point and material-point fields. - Adjusted
.frdnode numbering to include the Instance ID, preventing collisions between identical local node IDs in different Instances. - Adjusted
.frdcoordinates, element connectivity and nodal result blocks to consistently use the same Instance-aware node mapping.
Internals
- Adjusted parsing to use ordered passes for definitions, topology, compilation and analysis instead of pre-counting model entities.
- Removed obsolete nonlinear solver code and unused legacy paths.
- Improved parser diagnostics, compiler compatibility, error handling and internal documentation.
Individual patches:
- bump version to 2.7.0 (
5a27e6f) - fix compiler warnings (
7a2f78a) - Update instance rotation and FRD node IDs (
d56cb6a) - Rewrite input and result reference documentation (
493ab95) - fixed overflow bug in frd (
a716bec) - support parts in .res and .frd writer (
07954ae) - restore README after accidental placeholder (
b28de3e) - noop (
aa2f51e) - remove accidental placeholder (
406c6e3) - noop (
05998d6) - use same instance syntax as abaqus (
22ad5cf) - rework commenting across files (
70bc177) - rework commenting inside model classes and files (
6a5bd0c) - rework *OVERVIEW (
20e4656) - Minor cleanup (
b01f1e3) - refactor: add parts and instances compile boundary (
03d85ec) - allow sections to be defined before materials and profiles (
9d49059) - improve abaqus reading (
f1761ff) - fix compiler problems (
86a46d1) - Clean up dead nonlinear solver code (#11) (
3b564df) - Feg/abaqus syntax (#12) (
13e5776) - removed expected output behaviour (
fab797f) - update compiled version (
24af4ed) - Document linear harmonic result fields (
d174830) - Fix documented field aliases (
e49c998) - Fix contact manual cross reference (
1e391c8) - Clarify harmonic result frame handling (
69213d7) - Document harmonic and material point result formats (
7f5eadb) - Document surface orientation for mortar contact (
cdb7a37) - Update field domains and NORMAL documentation (
333690e) - Update command reference for recent DSL features (
b84d991) - Document field parsing dependencies (
1b345dc) - Update manual overview for harmonic and contact (
5d39a63) - Wire recent features into user manual (
0fdac11) - Add harmonic and contact manual examples (
594a5d9) - Add dual mortar contact chapter (
56ae691) - Document linear harmonic loadcase (
779d0e1) - Document harmonic analysis controls (
ce0d1b3) - Document shell director fields (
ed38c54) - Add dual-mortar surface-to-surface contact (#10) (
05da897) - Add transactional material point state storage (#8) (
663366e) - Add direct linear harmonic response analysis (#7) (
4d96e73) - fixed crucial field parsing issue (
6a1981d) - Register NORMAL from dedicated command file (
487e544) - Add dedicated NORMAL registration (
d7f79e1) - Separate NORMAL registration from FIELD (
210766d) - Use direct includes and aligned field lookup (
f840033) - Preserve parser option field ordering (
83d71e4) - Align shell normal construction with FEMaster code style (
4c7b975) - Document field parsing stage and parser workflow (
9291359) - Document staged parser workflow in FEMaster style (
92d55ae) - Align field and normal registration with FEMaster style (
6dc1be5) - Fix unrelated coupling DOF line in shell normal update (
20ee10e) - Remove obsolete shell normal apply implementation (
3d4c10b) - Integrate prescribed normals into shell normal construction (
293a157) - Parse fields before building shell normals (
7b7bfa5) - Add field parsing stage before shell normal construction (
5721b79) - Remove separate shell normal apply API (
904961c) - Make *NORMAL select the field directly (
14f573a) - Implement field-based shell normal overrides in Model (
9bfa477) - Add Model API for field-based shell normals (
32d9a6c) - Route NORMAL handling through Model (
e7b051a) - Use fields as shell normal overrides (
2424bae) - Add NORMAL keyword support (
ecefa0a) - minor attempt with contact (
0be4901) - Remove unused model compute wrappers and element no-op overrides (
688a595) - Use full solid integration outside stiffness assembly (
3581590) - refactor code (
54ad08a) - fixed arc length control (
8c9551b) - fix compile issues (
1c46d60) - minor change (
97ef9fd) - better code documentation (
3ca8ae5) - adjust error handling and cutback on invalid jacobians (
b5847a9) - initial version of better contact (
572c34c) - fixed mitc8 tying in curved shells (
faf8f06)
Full Changelog: v2.6.0...v2.7.0