Issue Not sure how to accomplish basic tasks or how to approach the problem
I am brand new user and never used Coreform before, so i apologize if my question is very simple.
What can we help with?
I have a legacy 2D earth model stored in Cubit format, with dimensions approximately 18km (X) by 4km (Z). Visually it looks like surfaces (~450 of them) but in a model tree it shows as “Sheet bodies” I aim to perform some fundamental manipulations to transform it into a 3D model/mesh suitable for Finite Element Analysis (FEA).
Selecting a Region:
As a brand new user with no prior experience with Coreform, I’m looking to isolate a specific portion of the 2D model by limiting its X-range to approximately 4km. I apologize if this question seems basic, but any guidance or methods for accomplishing this task would be greatly appreciated.
Creating a 3D Object:
Once I have the desired 4x4km segment of the 2D model (where all Y coordinates are 0), my next step is to extrude or translate it in the Y direction, preferably by 2-3km, to generate a 3D object. However, as a newcomer to Coreform, I’m unsure about the most effective method to accomplish this transformation.
Mesh Generation:
With the 3D object/volume in hand, the final step is to generate a mesh while ensuring control over the mesh size in the Y direction, aiming for consistency with the mesh size in the XZ plane, which ranges from approximately 1 to 100 meters.
I would greatly appreciate any suggestions, recommended resources, or step-by-step tutorials available online to help me achieve this task effectively.
Any assistance or guidance on the above tasks would be immensely helpful. Thank you in advance for your support!
Hello @CM2024,
the easiest way would be to cut your region out and then create some volumes with the surfaces.
Here is a quick example how you could do it.
As i don’t have your geometry i will create one.
#!cubit
reset
create surface rectangle width 18e3 height 4e3 yplane
#!python
xl = 18e3
cuts = 20
for i in range(cuts):
cubit.cmd(f"webcut body all with plane xplane offset {xl/cuts * (i+1)-xl/2} rotate 60 about y center 0 0 0")
cubit.cmd(f"webcut body all with plane xplane offset {xl/cuts * (i+1)-xl/2} rotate -60 about y center 0 0 0")
print("webcuts done")
We can perform webcuts to get our desired region and delete the rest afterwards.
#!cubit
webcut body all with plane xplane offset -2e3
webcut body all with plane xplane offset 2e3
delete body all with x_coord < -2e3
delete body all with x_coord > 2e3
Then we will sweep the surfaces in y to get the desired volumes.
sweep surface all vector 0 1 0 distance 2e3
The next thing is to do the imprint and merge. We will set a mesh size and even can set our desired element size in the y direction. Mesh.
imprint vol all
merge vol all
vol all size 200
curve all with y_coord > 5e2 and y_coord < 1.9e3 size 500
curve all with y_coord > 5e2 and y_coord < 1.9e3 scheme equal
mesh vol all
@Norbert_Hofbauer Thank you very much for quick response !
Script worked as expected, but because of the particular geometries , mesh quality is not great (see attached image).
My next challenge is to try to overcome it.
For initial FEA I do not need all the small details, so i was hoping to merge some of the small surfaces in 2D before using sweep command.