Skip to content

Firedrake meeting 2020 10 12

JDBetteridge edited this page Oct 12, 2020 · 6 revisions

Date and time 2020-10-05 15:00UTC (16:00BST)

Action Items

  1. Pick Chair and Minuter.
  2. ALL: (ongoing) triage the open issues and confirm if they are indeed still open (and perhaps provide labels)
  3. ??: Build master on centos to catch errors
  4. RK: Report back on quadrature estimation
  5. KS: Complex merge

Minutes

Present: David Ham, Connor Ward, Koki Sagiyama, Paul Kelly, Sophia Vorderwuelbecke, Colin Cotter, Lawrence Mitchell, Jack Betteridge, Tom Gregory, Rob Kirby

Apologies: Reuben Nixon-Hill (note new surname!)

DH: Complex has landed

RK: Report back on quadrature moved to "the future"

DH: Move meeting to Weds from next week (still at 1600 GMT+1)

Also note that there is an hour's disparity the following week due to Daylight savings differences between different countries.

JB: Numpy bug

Finally successfully installed on MacOS, we have working install script now.

Can also import Firedrake, but we need a hack:

export DYLD_INSERT_LIBRARIES=/usr/local/opt/openblas/lib/libblas.dylib:/usr/local/opt/openblas/lib/liblapack.dylib

We should discuss whether we are happy with such a hack.

Conclusion, this is a bodge. Can be fixed by adding correct rpath to offending modules that are loading the incorrect shared libraries. Action JB fix this.

KS: Subspace

Refactor tsfc/driver.py

  • gem construction
  • impero_c construction
  • kernel construction

etc.

firedrake/tsfc_interface.py

Ex: Jacobian assembly:

all_gem_expr = []
split form according to indices (i, j) -> subform
    split subform according to test/trial subspaces (test_sub, trial_sub) -> subsubform
       gem_expr = compile_ufl(subsubform, ...)
  ->   gem_expr = transform(gem_expr, test_sub, trial_sub) (test_sub and trial_sub know right transformation rule, such as rotation)
       all_gem_expr.append(gem_expr)
    kernel = construct_kernel(all_gem_expr)

Question:

Masked is still a ufl class (now defined in Firedrake), but disappear before calling compile_ufl. This is convenient when we take action and derivative, but not sure if this is a good practice.

KS: Masked is "UFL", but defined in Firedrake.

DH: This is an issue if transforms are called on UFL expressions.

LM: Can we just merge TSFC driver refactroring standalone?

DH: This will allow us to have a hiatus on this work.

Merge PRs:

Various fixes in FunctionMergeBlock ☑️

KVM elements ☑️

Fix index relabelling in assignments ☑️

DH: Possible topic for future discussion: Online Firedrake 2021?

DS: Another possible future discussion point is Extrusion lift operator

Date of next meeting

Discuss changing meeting to Wednesday early at Gebina Ham's request.

2020-10-21 15:00UTC (16:00BST)

Home

Building locally
Tips

Install Frequently Asked Questions

Running on HPC

Users

Developers Notes

Minutes and agenda of Firedrake meetings


Policies and procedures

Gravity wave scaling

Merge Complex Sprint

Reading Group

Firedrake 2021 Planning Meetings
Clone this wiki locally