Merging of "pressure" parts
Closed this issue · 5 comments
In the current version 2cf556e, vega creates 2D cells to support the surface forces defined by Nastran PLOAD and PLOAD4 commands. This is the correct way to translate these forces to SYSTUS (and, I think, Aster).
However, each PLOADx command builds its own CellGroup, with only one cell in it. This leads to Systus parts with only one element each time, which is far from efficient. For example, it's difficult for the user to identify where the force is defined, especially if there is more than one loadset. And for industrial models, the number of parts is beyond manageable.
To improve the translation, we suggest to merge all the 2D cells created by a loadset into a single group/part. It will be named, for example, "Surface_Load_%i", where "%i" is the loadset Nastran id.
I had a look at it, implemented as required and... commented it.
I realized that two PLOAD4 in the same loadset can have a different pressure value, so their "skins" cannot be merged in the same group only based on loadset.
I propose to implement instead a grouping capability in Vega so that only PLOADx that are in the same loadset and that are identical in their values are grouped together.
Why can't they be merged ? Is this an "Abstract" limitations ?
There is no reason they can't be merged in SYSTUS, if I recall correctly. Surface forces are applied elements by elements. Technically, we don't even need a part with these pressure elements, it's just for the ease of convenience.
Sorry I did not explain it properly, let's start with an example: two PLOAD4 in the same subcase but with a different pression:
PLOAD4 1 504 5.-1 250 8+865
+865 0 -1.+0 0. 0.
PLOAD4 1 444 7.-1 132 99+866
+866 0 -1.+0 0. 0.
We can see that the first PLOAD4 has a pressure of 0.5, the second a pressure of 0.7. So they should not be merged, even if they are both in the same subcase 1.
Indeed, I already coded the "merging" but I disabled it because of this case, so it is not a limitation of Abstract. It think that we should "merge" the cells in the same group if:
- the PLOADXs are in the same subcase
- and if the PLOADXs have all the same effect on their cells
I could write a grouping algorithm, the result will be a single group for subcase or smaller groups where the loadings are the same. In worst case scenario we would still have a group by cell if the intensity or direction (or other things in the PLOADX cards) are different in every possible cell.
Is this what is needed (I think so) ?
Maybe I understand (we will talk about it by phone) : one possibility is to translate all this without using groups in Systus, but assigning forces cell by cell ? This would be indeed a solution
I see no more unwanted parts in tests like pload4-chexa-multi, closing