Skip to content

Navigation Menu

Sign in
Sign up

curvilinear bits 'n pieces - #538

Open
julesghub wants to merge 15 commits into
development from
jgiordani/curvi-bits
Open

curvilinear bits 'n pieces #538
julesghub wants to merge 15 commits into
development from
jgiordani/curvi-bits

Conversation

@julesghub

@julesghub julesghub commented Apr 22, 2021

Copy link
Copy Markdown
Member

The additions for curvilinear mesh and solving.
This PR includes code changes and examples.

Significant code changes in Python and C layer:

  • Make an annulus Mesh, FeMesh_Annulus()
  • Class for defining curvilinear dirichlet conditions, CurvilinearDirichletCondition. (More documentation needed)
  • On every forceVector and stiffnessMatrix there is a rotMat memory chunk
  • Method to immediately force a consistent coordinate system after solve
  • Stokes solve aware of element rotation matrix, ALWAYS use _removeBCs=False

Examples:

  • docs/examples/curvi_examples/
    They include simple regression testing.

New stuff includes:
- Variable vector dirichlet boundary conditions,
 `CurvilinearDirichletCondition`, driven by uw.fn.
- A system wide rotation matrix that can be used for stokes or rotating a vector mesh variable
- Meshes with non cartesian geometries.
New examples under, docs/examples/curvi_examples.

Copy link
Copy Markdown
Contributor

Lets schedule a chat for next week to walk over this.

Copy link
Copy Markdown
Member Author

See examples/curvi_examples for models in annulus geometry.
To be merged into master release once the user interface is agreed upon by development team. @julesghub + @jmansour.

julesghub and others added 3 commits August 17, 2021 14:22
* Fix issue 537 - vrms typo
* Making sure the factor is an appropriate numpy type
* Updates for docker image generation: (#550)
* Switch deprecated `MAINTAINER` tag for new `LABEL` construct.
* Set `/opt` to ugo+rwx to allow users to install new pip packages.
* Remove `tini` which no longer appears to be required (and wasn't
 being used previously in any case).
* Remove extras for notebook MPI usage, as this wasn't being used
 and is easy to reinstall.
* Update UW image to point to newest base file image.
* Update to CHANGES.md
* Renaming guidelines.md -> development_guidelines.md
* * Fixes h5 file save mode (underworldcode/underworld2/#533)
* Minor documentation updates.
* Minor redundant code removal.
* Adding a pull request template!
* Update `CHANGES.md`
* Update to fix broken ReadTheDocs generation.
* * Import scaling into uw. (#554)
* Fix docstrings & doctests.
* Rename pull request template as Github doesn't appear
 to register it with upper case naming.
* Fix test in config which Py3.8 is complaining about.
* * Added a check to ensure that the selected solver is available at runtime. (#553)
The previous behaviour resulted in solves continuing unaware of solve
 difficulties, and failing elsewhere, or worse.
* Added test for the solver check.
* Solver check (#555)
* * Added a check to ensure that the selected solver is available at runtime.
 The previous behaviour resulted in solves continuing unaware of solve
 difficulties, and failing elsewhere, or worse.
* Added test for the solver check.
* I've updated these models to run with "mumps" if available,
and fallback to the default solver otherwise.
* Using a relative path to reload swarm files
* * For sequential IO operations, need to ensure that
 non-root procs open file with `append` mode instead
 of `write` mode (otherwise a new file is created by
 each proc, effectively deleting all data previously
 written).
* Update mesh file mode to `write` mode.
* Making test_long.sh executable
* Adding a EBA example to the tests for now. Documentation will come next
release when it's moved into examples.
The 2 extra terms in the heat equation, viscous dissipation and
adiabatic heating, should have equal volume integrals in the model, as
per King et al.
* Update CHANGES
* github actions docker images
* * Documentation, version numbers, and docker file updates. (#559)
* File creation mode should be "w" here too. Interesting, "append"
 mode causes a test failure in the Docker container, but not baremetal
 Ubuntu.
* Update docker_build_push.yml
* Update docker_build_push.yml
* Update docker_build_push.yml
* Adding symlink to `LICENSE.md` for conda.
Co-authored-by: John Mansour <mansourjohn@gmail.com>

Copy link
Copy Markdown
Contributor

@julesghub do we want to merge this?

julesghub changed the base branch from v2.11_release to development November 25, 2021 23:52
rbeucher force-pushed the development branch 4 times, most recently from 6ec398d to 2935e5f Compare May 24, 2022 08:26

Copy link
Copy Markdown
Contributor

What do we want to do with this. It's been a while and we have not discussed it.

Copy link
Copy Markdown
Member Author

I think we should aim to merge this code in. The interface isn't ideal but the functionality works and is part of Rohan and Thyagi's modeling.
Happy to release 2.13 first and then add this functionality in thereafter.

Copy link
Copy Markdown
Contributor

Yes, I think we release 2.13 and then we merged into dev.

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

Reviewers

@jmansour jmansour Awaiting requested review from jmansour

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

AltStyle によって変換されたページ (->オリジナル) /