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

[CL] Distribute an independent mesh for chemical system #2851

Merged

Conversation

renchao-lu
Copy link
Contributor

@renchao-lu renchao-lu commented Mar 6, 2020

This pull request adds a mesh tag required under the tree of <chemical system>. With this change, one is able to restrict the place where chemical reactions take place within a specified subdomain. This utility prevents from performing unneeded chemical calculations within the subdomains where no chemical reactions take place, thereby boosting computational efficiency up.

  1. Feature description was added to the changelog
  2. Tests covering your feature were added?
  3. Any new feature or behavior change was documented?

@TomFischer
Copy link
Member

I don't expect problems for parallel models. But to be sure please also prepare a parallel test. If you want I can test an example also at JUWELS supercomputer.


auto const chemical_system_map =
*_mesh.getProperties().template getPropertyVector<std::size_t>(
"bulk_node_ids", MeshLib::MeshItemType::Node, 1);
Copy link
Member

Choose a reason for hiding this comment

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

The default bulk mesh will not have the bulk_node_ids. (And it should not.)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I haven't realized.

Copy link
Member

Choose a reason for hiding this comment

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

=> The chemical domain mesh must always be a subdomain mesh (not necessarily smaller).

Maybe it would be better to have a mesh property indicating where the chemical system should be solved?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Good point! One need apply the mesh tool identifySubdomain to create a mesh file containing the property bulk_node_ids, even in the case that chemical reactions take place over the entire domain. Also, the tag <mesh> should no longer be optional.

@renchao-lu
Copy link
Contributor Author

I don't expect problems for parallel models. But to be sure please also prepare a parallel test. If you want I can test an example also at JUWELS supercomputer.

As yet we don't have a benchmark run in parallel, because I have not yet touched parallel computing for local chemical calculation.

@renchao-lu renchao-lu force-pushed the DistributeIndependentMeshForChemicalSystem branch 2 times, most recently from 2fcdd13 to b8976be Compare March 7, 2020 15:11
@renchao-lu
Copy link
Contributor Author

renchao-lu commented Mar 7, 2020

The gml files are replaced with vtu files because by far the tag <meshes> and <geometry> cannot coexist.

@renchao-lu renchao-lu force-pushed the DistributeIndependentMeshForChemicalSystem branch 2 times, most recently from 9955ab1 to 78f5f11 Compare March 8, 2020 11:34
@TomFischer
Copy link
Member

I don't expect problems for parallel models. But to be sure please also prepare a parallel test. If you want I can test an example also at JUWELS supercomputer.

As yet we don't have a benchmark run in parallel, because I have not yet touched parallel computing for local chemical calculation.

Please parallelize one of the benchmarks. If you have questions I can support you.

@renchao-lu
Copy link
Contributor Author

renchao-lu commented Mar 9, 2020

I don't expect problems for parallel models. But to be sure please also prepare a parallel test. If you want I can test an example also at JUWELS supercomputer.

As yet we don't have a benchmark run in parallel, because I have not yet touched parallel computing for local chemical calculation.

Please parallelize one of the benchmarks. If you have questions I can support you.

Thanks in advance for your support. Parallel computing for solving chemical systems is on schedule. As yet I have no idea where to start. It would be great to get some instructions from your side. Let's discuss if you have time.

@renchao-lu renchao-lu force-pushed the DistributeIndependentMeshForChemicalSystem branch from 78f5f11 to 06d2fd5 Compare March 9, 2020 14:40
@renchao-lu renchao-lu force-pushed the DistributeIndependentMeshForChemicalSystem branch from 06d2fd5 to 1eab41e Compare March 10, 2020 18:59
@renchao-lu renchao-lu force-pushed the DistributeIndependentMeshForChemicalSystem branch from 1eab41e to 12f5052 Compare March 13, 2020 16:49
@renchao-lu
Copy link
Contributor Author

Rebased.

@endJunction endJunction merged commit 487943a into ufz:master Mar 13, 2020
@renchao-lu renchao-lu deleted the DistributeIndependentMeshForChemicalSystem branch March 25, 2020 10:55
@ogsbot
Copy link
Member

ogsbot commented Jun 19, 2020

OpenGeoSys development has been moved to GitLab.

See this pull request on GitLab.

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.

5 participants