FEM: Local coordinate system (ConstraintTransform) should be more flexible
#18,329 创建于 2024年12月6日
仓库指标
- Star
- (30,913 star)
- PR 合并指标
- (平均合并 24天 7小时) (30 天内合并 217 个 PR)
描述
Is there an existing issue for this?
- I have searched the existing issues
Problem description
FEM ConstraintTransform internally relies on the CalculiX's *TRANSFORM keyword but doesn't use its full potential.
In short words, this keyword can transform the coordinate system of any node set to a local coordinate system (instead of the global cartesian one). Both rectangular and cylindrical system can be defined and to specify a new (local) system, one needs to provide the global coordinates of 2 points - a and b:
- rectangular system - a lies on the local X axis, b lies on the local XY plane but not on the local X axis
- cylindrical system - a and b both lie on the local Z axis
Then all boundary conditions (and concentrated forces but it's not relevant for FreeCAD) applied to these nodes will be applied in the local coordinate system.
Now, ConstrainTransform (implementation discussed here) is more automated and instead of inputting the coordinates of points a and b, one just needs to specify the rotation about each of the 3 axes for rectangular CSYS while cylindrical CSYS is created fully automatically but can be applied only to cylindrical faces. This poses a significant limitation. IMO it would be better to just follow the CalculiX's syntax (like other preprocessors do) and allow the user to manually specify the coordinates of points a and b. Of course, it would be nice if it was possible to select the existing vertices as well but manual input of coordinates will be often needed anyway. One change that could/should be made (and again is made by other preprocessors) is adding a third point (or actually first in the order of specification) defining the origin of the local CSYS. CalculiX doesn't need it but it's necessary to display the local CSYS in the 3D viewport and makes the definition more intuitive.
@marioalexis84 FYI
Full version info
OS: Windows 10 build 19045
Architecture: x86_64
Version: 1.1.0dev.39416 (Git) Conda
Build type: Release
Branch: main
Hash: f6268ffd2877dadb4440ade541e12c388a517d6e
Python 3.11.10, Qt 5.15.15, Coin 4.0.3, Vtk 9.3.0, OCC 7.8.1
Locale: Polish/Poland (pl_PL)
Stylesheet/Theme/QtStyle: unset/FreeCAD Classic/Qt default
Subproject(s) affected?
FEM
Anything else?
No response
Code of Conduct
- I agree to follow this project's Code of Conduct