Conversation
- Write 3D geometry in parallel without `mpi_dims_mask` - Read 3D geometry in parallel with `mpi_dims_mask` - Verify correct distribution of domain for any number of MPI processes
Add parameter `mpi_dims_mask` to class method `from_discrete_mapping` and bound method `read`.
Use new variable for dictionary with number of cells for each patch.
test methods from_discrete_mapping and from_topological_domain with mpi_dims_mask
- Add new constructor Geometry.from_file - Remove `filename` from __init__ parameters
commit ccbd6e3 Author: Yaman Güçlü <yaman.guclu@gmail.com> Date: Wed Oct 1 06:25:42 2025 +0200 Allow `mpi_dims_mask` with geometry file (#526) Add the optional parameter `mpi_dims_mask` to the constructor of class `Geometry`, as well as its class methods `from_discrete_mapping` and `from_topological_domain`. Add unit tests to verify that the domain is correctly decomposed. --------- Co-authored-by: Alisa Kirkinskaia <alisa.kirkinskaia@tum.de> Co-authored-by: Alisa Kirkinskaia <alisa.kirkinsk@gmail.com>
- Add function `get_available_mappings` - Clean up function `discrete_mapping` and add docstring to it
3 tasks done
yguclu
marked this pull request as draft
September 11, 2026 16:22
yguclu
marked this pull request as ready for review
September 11, 2026 16:22
yguclu
marked this pull request as draft
September 11, 2026 16:36
yguclu
marked this pull request as ready for review
September 11, 2026 16:36
yguclu
marked this pull request as draft
October 3, 2026 06:08
yguclu
marked this pull request as ready for review
October 3, 2026 06:08
yguclu
marked this pull request as draft
October 3, 2026 09:12
yguclu
marked this pull request as ready for review
October 3, 2026 09:12
yguclu
marked this pull request as draft
October 4, 2026 08:43
yguclu
marked this pull request as ready for review
October 4, 2026 08:43
`plot_solution` still called the old `Geometry(filename=...)` constructor, which raised a TypeError after the redesign of `Geometry.__init__` when running the example with a spline mapping (option -S).
The example is meant to be run as a script, so imports are made local to the functions that use them. Only the base classes PolarModel2D and LinearOperator, needed at class definition, remain at module level. Silence Pylint's import-outside-toplevel check for the whole file, with a comment explaining the reason.
The `mappings` parameter defaults to None, meaning that no patch has a mapping, but the type check rejected None. The code handling None was therefore never reached, and it would have failed anyway for single-patch domains, where `domain.interior` is not iterable. Accept None in the type check and build the default dictionary from `domain.interior_names`. Add `test_geometry_init_without_mappings` for single- and two-patch domains.
The demo used an API that no longer exists (`Geometry(patches=...)`, `geo.patches`) and a geometry file that is not in the repository. The functions in this module will be covered by unit tests in `psydac.cad.tests.test_cad`.
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
from_file__init__method in all factory class methods (from_file,from_discrete_mapping, andfrom_topological_domain)__init__(factory class methods should be preferred)pdimparameter (number of dimensions of physical domain) to__init__@pytest.mark.xdist_group('h5py')to all tests inpsydac.cad.tests.test_geometry, becauseh5pyis not thread-safeMoreover:
0.20.0joinconstructor ofDomainobjects (fromsympde.topology.domain)psydac/cad/mesh/multipatch)ubuntu_installationsaction indocumentationworkflowTO DO:
from_file, make sure that thedomainargument (an instance ofsympde.topology.Domain) is compatible with the topological domain defined in the.ymlsection of the HDF5 file.cad.tests.test_geometry:test_geometry_2d_1andtest_geometry_2d_2test_geometry_1cad.cadin new modulecad.tests.test_cadpyproject.tomland run all unit tests once again on all platforms