Skip to content

Have Function.at make a vertex-only mesh at the specified points #3080

@ReubenHill

Description

@ReubenHill

What we want

VertexOnlyMesh has a much better point location algorithm than Function.at. Without this algorithm, .at regularly produces a runtime error

raise RuntimeError("Point evaluation gave different results across processes.")

which can only be fixed by reducing the mesh tolerance parameter.

The internals of .at should be replaced by code which creates a VertexOnlyMesh at the specified points and returns the values found by interpolating onto a P0DG function space at the point locations. A bunch of old point location code can then be removed.

What's blocking this

Possible intermediate solution

We can either hold off on doing this until the above features have been added or we can implement this for cases where this does work and keep the old code for where it doesn't. Eventually we will have feature parity and can remove the old code.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions