Ah ok, we'll give this a try! We can definitely wait a couple more weeks for parallel. all the best --cjc On 6 December 2016 at 13:02, Barral, Nicolas X <n.barral@imperial.ac.uk> wrote:
On 06/12/16 11:39, Colin Cotter wrote:
Dear all, We are keen to do some adaptive mesh refinement in Firedrake, but probably don't need the full capabilities of Pragmatic, since we are just solving a time independent problem, computing an error bound and then refining where necessary (not coursening, and not rebalancing to start with). Does dmplex have any built in refinement operations that we can use?
Cheers Cjc
If you don't care about parallel (or can wait a couple more weeks), and you already have an error bound you can turn into a metric field, the current interface to pragmatic in petsc is very simple (and the install process works fine): https://www.mcs.anl.gov/petsc/petsc-dev/docs/manualpages/ DMPLEX/DMPlexAdapt.html
PetscErrorCode DMPlexAdapt(DM dm, Vec metric, const char bdLabelName[], DM *dmAdapt) it simply takes your dmplex, your metric field and gives a new dmplex.
Advantages are it is likely to be parallel soon, and if you plan on needing something more than refinement you won't have to change your code. I'm not even sure it's much slower than Matt Knepley's handmade refinement. Drawback is it's not hierarchical refinement if you need that for some reason.
-- Nicolas
-- Nicolas Barral
Dept. of Earth Science and Engineering Imperial College London Royal School of Mines - Office 4.88 London SW7 2AZ
_______________________________________________ firedrake mailing list firedrake@imperial.ac.uk https://mailman.ic.ac.uk/mailman/listinfo/firedrake
-- http://www.imperial.ac.uk/people/colin.cotter www.cambridge.org/9781107663916
participants (1)
- 
                
                Colin Cotter