Skip to content
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

[WIP] RBF mesh deformation #2240

Draft
wants to merge 16 commits into
base: develop
Choose a base branch
from
Draft

Conversation

FvanSteen
Copy link

Proposed Changes

Give a brief overview of your contribution here in a few sentences.

Related Work

Resolve any issues (bug fix or feature request), note any related PRs, or mention interactions with the work of others, if any.

PR Checklist

Put an X by all that apply. You can fill this out after submitting the PR. If you have any questions, don't hesitate to ask! We want to help. These are a guide for you to know what the reviewers will be looking for in your contribution.

  • I am submitting my contribution to the develop branch.
  • My contribution generates no new compiler warnings (try with --warnlevel=3 when using meson).
  • My contribution is commented and consistent with SU2 style (https://su2code.github.io/docs_v7/Style-Guide/).
  • I used the pre-commit hook to prevent dirty commits and used pre-commit run --all to format old commits.
  • I have added a test case that demonstrates my contribution, if necessary.
  • I have updated appropriate documentation (Tutorials, Docs Page, config_template.cpp), if necessary.

Copy link
Contributor

@kursatyurt kursatyurt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good work. I am looking forward to testing it :)

* \brief Get the type of mesh deformation method.
* \return type of mesh deformation.
*/
DEFORM_KIND GetDeform_Kind(void) const { return Deform_Kind; }
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
DEFORM_KIND GetDeform_Kind(void) const { return Deform_Kind; }
DEFORM_KIND GetDeform_Kind() const { return Deform_Kind; }

@@ -6457,7 +6459,19 @@ void CConfig::SetOutput(SU2_COMPONENT val_software, unsigned short val_izone) {

if (val_software == SU2_COMPONENT::SU2_DEF) {
cout << endl <<"---------------- Grid deformation parameters ( Zone " << iZone << " ) ----------------" << endl;
cout << "Grid deformation using a linear elasticity method." << endl;
cout << "Grid deformation using a ";
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
cout << "Grid deformation using a ";
cout << "Grid deformation using ";

/*!
* \brief Destructor of the class.
*/
~CLinearElasticity(void) override;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
~CLinearElasticity(void) override;
~CLinearElasticity() override;

#include "../../include/toolboxes/CSymmetricMatrix.hpp"

/*!
* \class CLinearElasticity
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* \class CLinearElasticity
* \class CRadialBasisFunctionInterpolation

/*!
* \brief Solving of the Radial Basis Function interpolation system, yielding the interpolation coefficients
*/
void SolveRBF_System(void);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
void SolveRBF_System(void);
void SolveRBF_System();

/*!
* \brief Returns global index.
*/
inline unsigned long GetIndex(void){return idx;}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
inline unsigned long GetIndex(void){return idx;}
inline unsigned long GetIndex(){return idx;}

/*!
* \brief Returns vertex index.
*/
inline unsigned long GetVertex(void){return vertex_idx;}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
inline unsigned long GetVertex(void){return vertex_idx;}
inline unsigned long GetVertex(){return vertex_idx;}

/*!
* \brief Returns marker index.
*/
inline unsigned short GetMarker(void){return marker_idx;}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
inline unsigned short GetMarker(void){return marker_idx;}
inline unsigned short GetMarker(){return marker_idx;}

controlNodes = &boundaryNodes;
}

CRadialBasisFunctionInterpolation::~CRadialBasisFunctionInterpolation(void) = default;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
CRadialBasisFunctionInterpolation::~CRadialBasisFunctionInterpolation(void) = default;
CRadialBasisFunctionInterpolation::~CRadialBasisFunctionInterpolation() = default;

break;
case DEFORM_KIND::ELASTIC:
VolumetricMovement = new CLinearElasticity(geometry, config);

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did not see the freeing of the memory of those classes, when and where they were freed.

FvanSteen and others added 3 commits March 19, 2024 14:07
In case of internal boundaries that are allowed to move freely based on the deformation of moving boundaries, these options enable it to do so.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants