-
Notifications
You must be signed in to change notification settings - Fork 160
Firedrake meeting 2020 07 07
Date and time 2020-07-07 15:00UTC (16:00BST)
- Choose someone to minute and chair
- ALL: (ongoing) triage the open issues and confirm if they are indeed still open (and perhaps provide labels)
- KS, (DH, LM): Document describing what we think the mixed domain interface should look like (and hence what is needed in UFL, and whether it matches the existing Fenics efforts). Try an alternative description and make previously agreed changes.
- **: Think about the correct mathematical formulation for Filtered
- ALL: Please review complex.
-
**: Add#1771--remove-build-files
to make install smaller; convert this to an issue
Present: Reuben Hill, Lawrence Mitchell, David Ham, Koki Sagiyama, Paul Kelly, Robert Kirby, Jack Betteridge, Matthew Kan, Mohammad Usman, Nacime Bouziani, Sofia Simola, Sophia Vorderwuelbecke
Apologies: Dan Shapero
(Note: busy discussion - below notes may contain inaccuracies)
- Problem: Practical implementation has moved well beyond initial design constraints of FIAT and elements are all over the place and complicated interdependencies. Lots of pullbacks in UFL which suggest leaky interface.
- Proposed Solution: Create an element oracle that would replace FIAT, FinAT, element parts of UFL, and some bits of TSFC. (Rob Kirby can expand on this)
- Raised issue: UFL needs symbolic pullbacks e.g. for shape derivatives.
- Response: Have element oracle return legal UFL as result of a pullback. Make element oracle a registered package to avoid circular dependencies (David Ham can expand on this).
- Alternative: Have coordinate derivative callback in API of element oracle.
- Making this happen:
- David Ham will have an UG student able to put in 8 weeks work on element oracle from the end of July.
- Lawrence Mitchell suggests straw-manning the interface to get it right before putting in serious programming work.
- Rob Kirby has worked on adding dual space representations to FIAT with new concept of point dual bases from which dual functions can be represented as linear sums. (Rob Kirby can expand on this)
- Could make certain interpolations work out of the box which currently do not.
- Rob Kirby to make PR.
- Want to make use of new technology for FIAT.
- Lawrence open to suggestions on how to move forwards
- Only 1 kernel test failing at time of writing. Close to solving.
Thoughts on running minisyposia as well as minisymposterium? Chased up Chris Richardson and he's very keen to contribute for possible Exascale simulation themed mini. (Also happy to contribute a poster).
- Suggested that JB go ahead with Exascale simulation themed minisymposium.
- DH will provide names of who to contact
Is Firedrake currently using any features of randomgen that aren't now in numpy?
- Apparently parallel safe RNG has been ported to numpy.
- Aim to try and drop the dependency if possible.
Status:
https://github.com/firedrakeproject/firedrake/issues/1648 (see main.pdf
in edited issue description)
Summary:
-
Viewing
ufl.Transformed
as a map is awkward. -
Introduce
V0 = ufl.Subspace(V, some_constraint)
-
Introduce
v0 = ufl.Masked(v, V0)
(v0 = v if v in V0 else 0)
- After reviewing
main.pdf
:- Still have issues with concepts being basis-dependent which is not allowed in UFL.
- Make concepts like
FunctionSpaceModifier
non-basis-dependent by making them "masks". - More design work needed.
DH will be away for several of the next firedrake meetings.
2020-07-14 15:00UTC (16:00BST)
Building locally
Tips
- Running Firedrake tests with different subpackage branches
- Modifying and Rebuilding PETSc and petsc4py
- Vectorisation
- Debugging C kernels with
lldb
on MacOS - Parallel MPI Debugging with
tmux-mpi
,pdb
andgdb
- Parallel MPI Debugging with VSCode and
debugpy
- Modifying generated code
- Kernel profiling with LIKWID
- breakpoint() builtin not working
- Debugging pytest with multiple processing
Developers Notes
- Upcoming meeting 2024-08-21
- 2024-08-07
- 2024-07-24
- 2024-07-17
- 2024-07-10
- 2024-06-26
- 2024-06-19
- 2024-06-05
- 2024-05-29
- 2024-05-15
- 2024-05-08
- 2024-05-01
- 2024-04-28
- 2024-04-17
- 2024-04-10
- 2024-04-03
- 2024-03-27
- 2024-03-20
- 2024-03-06
- 2024-02-28
- 2024-02-28
- 2024-02-21
- 2024-02-14
- 2024-02-07
- 2024-01-31
- 2024-01-24
- 2024-01-17
- 2024-01-10
- 2023-12-13
- 2023-12-06
- 2023-11-29
- 2023-11-22
- 2023-11-15
- 2023-11-08
- 2023-11-01
- 2023-10-25
- 2023-10-18
- 2023-10-11
- 2023-10-04
- 2023-09-27
- 2023-09-20
- 2023-09-06
- 2023-08-30
- 2023-08-23
- 2023-07-12
- 2023-07-05
- 2023-06-21
- 2023-06-14
- 2023-06-07
- 2023-05-17
- 2023-05-10
- 2023-03-08
- 2023-02-22
- 2023-02-15
- 2023-02-08
- 2023-01-18
- 2023-01-11
- 2023-12-14
- 2022-12-07
- 2022-11-23
- 2022-11-16
- 2022-11-09
- 2022-11-02
- 2022-10-26
- 2022-10-12
- 2022-10-05
- 2022-09-28
- 2022-09-21
- 2022-09-14
- 2022-09-07
- 2022-08-25
- 2022-08-11
- 2022-08-04
- 2022-07-28
- 2022-07-21
- 2022-07-07
- 2022-06-30
- 2022-06-23
- 2022-06-16
- 2022-05-26
- 2022-05-19
- 2022-05-12
- 2022-05-05
- 2022-04-21
- 2022-04-07
- 2022-03-17
- 2022-03-03
- 2022-02-24
- 2022-02-10
- 2022-02-03
- 2022-01-27
- 2022-01-20
- 2022-01-13
- 2021-12-15
- 2021-12-09
- 2021-11-25
- 2021-11-18
- 2021-11-11
- 2021-11-04
- 2021-10-28
- 2021-10-21
- 2021-10-14
- 2021-10-07
- 2021-09-30
- 2021-09-23
- 2021-09-09
- 2021-09-02
- 2021-08-26
- 2021-08-18
- 2021-08-11
- 2021-08-04
- 2021-07-28
- 2021-07-21
- 2021-07-14
- 2021-07-07
- 2021-06-30
- 2021-06-23
- 2021-06-16
- 2021-06-09
- 2021-06-02
- 2021-05-19
- 2021-05-12
- 2021-05-05
- 2021-04-28
- 2021-04-21
- 2021-04-14
- 2021-04-07
- 2021-03-17
- 2021-03-10
- 2021-02-24
- 2021-02-17
- 2021-02-10
- 2021-02-03
- 2021-01-27
- 2021-01-20
- 2021-01-13
- 2021-01-06