moose icon indicating copy to clipboard operation
moose copied to clipboard

Add Interpolation Scheme (Steinbach-Apel's scheme)

Open WooseobKHU opened this issue 11 months ago • 7 comments

#closes #27056

Reason

Design

Impact

WooseobKHU avatar Mar 12 '24 09:03 WooseobKHU

@dschwen who is a good person to assign to review this?

GiudGiud avatar Mar 12 '24 15:03 GiudGiud

@bwspenc same question

GiudGiud avatar Mar 15 '24 00:03 GiudGiud

@laagesen

GiudGiud avatar Mar 21 '24 22:03 GiudGiud

@simopier this is related to your recent manuscript right? If so can you please review?

laagesen avatar Mar 22 '24 15:03 laagesen

Also, the test are failing with the following errors. Make sure to initialize everything in the right order.

In file included from /data/civet1/build/moose/modules/solid_mechanics/build/unity_src/materials_Unity.C:68:
/data/civet1/build/moose/modules/solid_mechanics/src/materials/ComputeComplianceTensorBase.C:27:5: error: field '_compliance_tensor_name' will be initialized after field '_elasticity_tensor_name' [-Werror,-Wreorder-ctor]
    _compliance_tensor_name(_base_name + "compliance_tensor"),
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    _elasticity_tensor_name(_base_name + "elasticity_tensor"
/data/civet1/build/moose/modules/solid_mechanics/src/materials/ComputeComplianceTensorBase.C:41:16: note: in instantiation of member function 'ComputeComplianceTensorBaseTempl<false>::ComputeComplianceTensorBaseTempl' requested here
template class ComputeComplianceTensorBaseTempl<false>;
               ^
/data/civet1/build/moose/modules/solid_mechanics/src/materials/ComputeComplianceTensorBase.C:27:5: error: field '_compliance_tensor_name' will be initialized after field '_elasticity_tensor_name' [-Werror,-Wreorder-ctor]
    _compliance_tensor_name(_base_name + "compliance_tensor"),
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    _elasticity_tensor_name(_base_name + "elasticity_tensor"
/data/civet1/build/moose/modules/solid_mechanics/src/materials/ComputeComplianceTensorBase.C:42:16: note: in instantiation of member function 'ComputeComplianceTensorBaseTempl<true>::ComputeComplianceTensorBaseTempl' requested here
template class ComputeComplianceTensorBaseTempl<true>;
               ^
In file included from /data/civet1/build/moose/modules/solid_mechanics/build/unity_src/materials_Unity.C:97:
/data/civet1/build/moose/modules/solid_mechanics/src/materials/ComputeHarmonicElasticityTensor.C:39:5: error: initializer order does not match the declaration order [-Werror,-Wreorder-ctor]
    _base_name(isParamValid("base_name") ? getParam<std::string>("base_name") + "_" : ""),
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    _compliance(declareProperty<RankFourTensor>(_base_name + "compliance_tensor"))
/data/civet1/build/moose/modules/solid_mechanics/src/materials/ComputeHarmonicElasticityTensor.C:39:5: note: field '_base_name' will be initialized after field '_compliance'
    _base_name(isParamValid("base_name") ? getParam<std::string>("base_name") + "_" : ""),
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/civet1/build/moose/modules/solid_mechanics/src/materials/ComputeHarmonicElasticityTensor.C:41:5: note: field '_elasticity_name' will be initialized after field '_elasticity_tensor'
    _elasticity_name(_base_name + "elasticity_tensor"),
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/civet1/build/moose/modules/solid_mechanics/src/materials/ComputeHarmonicElasticityTensor.C:40:49: error: field '_base_name' is uninitialized when used here [-Werror,-Wuninitialized]
    _compliance(declareProperty<RankFourTensor>(_base_name + "compliance_tensor")),
                                                ^
/data/civet1/build/moose/modules/solid_mechanics/src/materials/ComputeHarmonicElasticityTensor.C:42:56: error: field '_base_name' is uninitialized when used here [-Werror,-Wuninitialized]
    _elasticity_tensor(declareProperty<RankFourTensor>(_base_name + "elasticity_tensor"))
                                                       ^
In file included from /data/civet1/build/moose/modules/solid_mechanics/build/unity_src/materials_Unity.C:128:
/data/civet1/build/moose/modules/solid_mechanics/src/materials/ComputeSteinbachApelStrain.C:30:5: error: initializer order does not match the declaration order [-Werror,-Wreorder-ctor]
    _h_eta(getMaterialProperty<Real>("h")),
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    _base_name(isParamValid("base_name") ? getParam<std::string>("base_name") + "_" : "")
/data/civet1/build/moose/modules/solid_mechanics/src/materials/ComputeSteinbachApelStrain.C:30:5: note: field '_h_eta' will be initialized after field '_base_name'
    _h_eta(getMaterialProperty<Real>("h")),
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/civet1/build/moose/modules/solid_mechanics/src/materials/ComputeSteinbachApelStrain.C:41:5: note: field '_ref_inv' will be initialized after field '_mechanical_strain_b'
    _ref_inv(declareProperty<RankFourTensor>("ref_inv")),
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/civet1/build/moose/modules/solid_mechanics/src/materials/ComputeSteinbachApelStrain.C:42:5: note: field '_mechanical_strain_b' will be initialized after field '_mechanical_strain_a'
    _mechanical_strain_b(declareProperty<RankTwoTensor>(_base_B + "mechanical_strain")),
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /data/civet1/build/moose/modules/solid_mechanics/build/unity_src/materials_Unity.C:144:
/data/civet1/build/moose/modules/solid_mechanics/src/materials/ElasticEnergyMaterialSAS.C:42:5: error: initializer order does not match the declaration order [-Werror,-Wreorder-ctor]
    _base_name(isParamValid("base_name") ? getParam<std::string>("base_name") + "_" : ""),
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    _prop_Fa(getMaterialProperty<Real>("fa_name"))
/data/civet1/build/moose/modules/solid_mechanics/src/materials/ElasticEnergyMaterialSAS.C:42:5: note: field '_base_name' will be initialized after field '_prop_Fa'
    _base_name(isParamValid("base_name") ? getParam<std::string>("base_name") + "_" : ""),
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/civet1/build/moose/modules/solid_mechanics/src/materials/ElasticEnergyMaterialSAS.C:49:5: note: field '_eigenstrain_B' will be initialized after field '_num_eta'

simopier avatar Apr 02 '24 22:04 simopier

Job Precheck on 675c9d0 wanted to post the following:

Your code requires style changes.

A patch was auto generated and copied here
You can directly apply the patch by running, in the top level of your repository:

curl -s https://mooseframework.inl.gov/docs/PRs/27060/clang_format/style.patch | git apply -v

Alternatively, with your repository up to date and in the top level of your repository:

git clang-format a489a53bdb58ce7053c80cbebf6e2673da28fa3b

moosebuild avatar Apr 18 '24 04:04 moosebuild

Thanks for reviewing @simopier @WooseobKHU or @simopier please ping me when this is ready

GiudGiud avatar May 05 '24 22:05 GiudGiud

@WooseobKHU @simopier any update? Or should we close this?

GiudGiud avatar Aug 15 '24 22:08 GiudGiud

I'm not in a position to do that right now, but I'll try to update when I get a chance later. Thank you very much for your help.

2024년 8월 16일 (금) 오전 7:07, Guillaume Giudicelli @.***>님이 작성:

@WooseobKHU https://github.com/WooseobKHU @simopier https://github.com/simopier any update? Or should we close this?

— Reply to this email directly, view it on GitHub https://github.com/idaholab/moose/pull/27060#issuecomment-2292355567, or unsubscribe https://github.com/notifications/unsubscribe-auth/A54H5W4NITN4JXLTRPJVQ5TZRURBHAVCNFSM6AAAAABER3KOUKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOJSGM2TKNJWG4 . You are receiving this because you were mentioned.Message ID: @.***>

WooseobKHU avatar Aug 16 '24 06:08 WooseobKHU