-
Notifications
You must be signed in to change notification settings - Fork 261
[IgaApplication] nurbs geometry modeler extension to 3D #13465
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
out of curiosity, the 3D IGA elements work now in |
Hi Alejandro! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Short comments from my side.
std::string skin_model_part_inner_initial_name = "SkinModelPartInnerInitial"; | ||
std::string skin_model_part_outer_initial_name = "SkinModelPartOuterInitial"; | ||
std::string skin_model_part_name; | ||
if (mParameters.Has("skin_model_part_inner_initial_name")) { | ||
skin_model_part_inner_initial_name = mParameters["skin_model_part_inner_initial_name"].GetString(); | ||
|
||
KRATOS_ERROR_IF_NOT(mpModel->HasModelPart(skin_model_part_inner_initial_name)) | ||
<< "The skin_model_part '" << skin_model_part_inner_initial_name << "' was not created in the model.\n" | ||
<< "Check the reading of the mdpa file in the import mdpa modeler."<< std::endl; | ||
} | ||
if (mParameters.Has("skin_model_part_outer_initial_name")) { | ||
skin_model_part_outer_initial_name = mParameters["skin_model_part_outer_initial_name"].GetString(); | ||
|
||
KRATOS_ERROR_IF_NOT(mpModel->HasModelPart(skin_model_part_outer_initial_name)) | ||
<< "The skin_model_part '" << skin_model_part_outer_initial_name << "' was not created in the model.\n" | ||
<< "Check the reading of the mdpa file in the import mdpa modeler."<< std::endl; | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This needs to be updated accordingly (CreateAndAddRegularGrid2d).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice catch Ricky, thanks!
void NurbsGeometryModeler::CreateAndAddRegularGrid2D( ModelPart& r_model_part, const Point& A_xyz, const Point& B_xyz, | ||
const Point& A_uvw, const Point& B_uvw, SizeType OrderU, SizeType OrderV,SizeType NumKnotSpansU, SizeType NumKnotSpansV, bool AddSurfaceToModelPart) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why change this?
void NurbsGeometryModeler::CreateAndAddRegularGrid3D( ModelPart& r_model_part, const Point& A_xyz, const Point& B_xyz, | ||
const Point& A_uvw, const Point& B_uvw, SizeType OrderU, SizeType OrderV, SizeType OrderW, | ||
SizeType NumKnotSpansU, SizeType NumKnotSpansV, SizeType NumKnotSpansW ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
idem
void CreateAndAddRegularGrid3D( | ||
ModelPart& rModelPart, | ||
const Point& A_xyz, | ||
const Point& B_xyz, | ||
const Point& A_uvw, | ||
const Point& B_uvw, | ||
const SizeType OrderU, | ||
const SizeType OrderV, | ||
const SizeType OrderW, | ||
const SizeType NumKnotSpansU, | ||
const SizeType NumKnotSpansV, | ||
const SizeType NumKnotSpansW, | ||
const bool AddVolumeToModelPart) override; | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
idem
@andrewgorgi whenever you have time can you review this? |
📝 Description
This is the first of several PRs aimed at extending the current 2D SBM workflow to 3D.
This PR focuses on extending the nurbs_geometry_modeler to support 3D problems.
The next PR will address the extension of CreateSurrogateBoundary for 3D, along with the corresponding tests.