Skip to content

Phase kinetics composition#7024

Open
lhy11009 wants to merge 1 commit into
geodynamics:mainfrom
lhy11009:phase_kinetics_composition
Open

Phase kinetics composition#7024
lhy11009 wants to merge 1 commit into
geodynamics:mainfrom
lhy11009:phase_kinetics_composition

Conversation

@lhy11009

Copy link
Copy Markdown
Contributor

Pull Request Checklist. Please read and check each box with an X. Delete any part not applicable. Ask on the forum if you need help with any step.

Add support for phase-transition kinetics in compositions and use it in phase-property averaging

Before your first pull request:

For all pull requests:

For new features/models or changes of existing features:

  • I have tested my new feature locally to ensure it is correct.
  • I have created a testcase for the new feature/benchmark in the tests/ directory.
  • I have added a changelog entry in the doc/modules/changes directory that will inform other users of my change.

@lhy11009

Copy link
Copy Markdown
Contributor Author

Here is a phase transition in P and T (linearly varied along the x axis) space, using phase transitions at 410, 520, 660 km. image

@lhy11009

Copy link
Copy Markdown
Contributor Author

The following one is where the "phase_kinetics" variable is included and set to value 1.0 if x > 500 km, and to 0.0 if x < 500 km.
image

double current_parameter = parameter_values[phase_index+1];

// Modify the parameter according to phase kinetics.
for (unsigned int j=0; j<kinetics_mapping.size(); ++j)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

The real implementation is just this few lines of code, putting the kinetic varibles into material averaging.



std::pair<std::vector<double>, std::vector<unsigned int>>
map_transition_kinetics_to_phases (const std::vector<unsigned int> &n_phase_transitions_per_composition,

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Then this function maps from kinetic variables to indices and values related to one composition.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant