So, how were you judging that the mesh wasn't getting repartitioned?  I
can't remember, does the processor_id come out automatically when we output
GMV?

Also: cool, I didn't know Paraview could read GMV.  That's a seriously old
mesh format!

Derek

On Wed, Aug 5, 2015 at 3:33 PM Junchao Zhang <junchao.zh...@gmail.com>
wrote:

> I used GMVIO(mesh).write("output.gmv");
>
> --Junchao Zhang
>
> On Wed, Aug 5, 2015 at 2:32 PM, Derek Gaston <fried...@gmail.com> wrote:
>
>> What file format were you using to write the mesh out and view it in
>> Paraview?
>>
>> Derek
>>
>> On Wed, Aug 5, 2015 at 12:14 PM Junchao Zhang <junchao.zh...@gmail.com>
>> wrote:
>>
>>> <<forgot to add the mailing list, so I resend it>>
>>>
>>> In addition, I did more experiments.  I increased the input mesh size,
>>> let
>>> it has 64 elements and ran with 12 processes. It looks libmesh keeps the
>>> original partition (got when the mesh is read in) unchanged, and does not
>>> do repartitioning after refinement. I observed it from viewing output
>>> mesh
>>> in paraview.
>>> So the question is under what conditions mesh repartitioning will be
>>> triggered in libmesh?
>>>
>>> Thank you very much.
>>>
>>> --Junchao Zhang
>>>
>>> On Tue, Aug 4, 2015 at 2:58 PM, Junchao Zhang <junchao.zh...@gmail.com>
>>> wrote:
>>>
>>> > Hi, John,
>>> >
>>> > Attached are my naive AMR (adapted from adaptivity_ex2.C) and its
>>> input. I
>>> > compiled it with  `libmesh-config --cxx` -o amr_libmesh
>>> > ../examples/amr_libmesh.cpp `libmesh-config --cxxflags --include
>>> --ldflags
>>> > --libs` and ran it with mpirun -n 5 ./amr_libmesh -niter 5
>>> > I opened output.gmv and I could only see partitions on four
>>> processors.  I
>>> > don't know where I can call mesh.partition(n).
>>> >
>>> > Thanks.
>>> >
>>> >
>>> > --Junchao Zhang
>>> >
>>> > On Tue, Aug 4, 2015 at 2:26 PM, John Peterson <jwpeter...@gmail.com>
>>> > wrote:
>>> >
>>> >>
>>> >>
>>> >> On Tue, Aug 4, 2015 at 1:07 PM, Junchao Zhang <
>>> junchao.zh...@gmail.com>
>>> >> wrote:
>>> >>
>>> >>> Hello,
>>> >>>    I am writing a simple AMR code with libmesh. My input mesh has 4
>>> >>> elements. I use ParallelMesh.  I found I could not distribute it to
>>> more
>>> >>> than four processes even after refinement.
>>> >>>    In my code, I firstly do mesh.read("mesh.xda"). I find libmesh
>>> reads
>>> >>> the
>>> >>> data and distributes it on four processes, and mesh._is_serial is
>>> set to
>>> >>> false.  After that, I call
>>> mesh_refinement.refine_and_coarsen_elements(),
>>> >>> which calls _mesh.prepare_for_use (), and then this->partition().
>>> But in
>>> >>> mesh_base.C, since this->is_serial() is false, the partitioner never
>>> gets
>>> >>> called.
>>> >>>
>>> >>
>>> >>
>>> >> What happens if you call mesh.partition(n) directly?
>>> >>
>>> >> Please post your entire code so we can take a look.
>>> >>
>>> >> --
>>> >> John
>>> >>
>>> >
>>> >
>>>
>>> ------------------------------------------------------------------------------
>>> _______________________________________________
>>> Libmesh-users mailing list
>>> Libmesh-users@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/libmesh-users
>>>
>>
>
------------------------------------------------------------------------------
_______________________________________________
Libmesh-users mailing list
Libmesh-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to