Please use the libmesh-users list in the future; it's often responsive
even when an individual developer is busy.

On Tue, 8 Jan 2019, 서승진 wrote:

> Hi. I currently trying to solve the boundary deformation model in parallel.
> 
> 1) I have tried to write the code to solve the boundary deformation by using 
> moving mesh,
> exactly saying, by moving the nodes in the boundary.
> 
> I used the MeshBase element iterator, and the boundary condition by using 
> (elem->neighbor(side) == NULL) condition.
> Within the condition in the loop, I used
>   mesh.node(node_id) = Point (new_x, new_y, new_z);
> function, and it worked. However, the deformed boundary had spitz pattern. 
> (Original shape of boundary was line)

I'm afraid I don't know what a "spitz pattern" is.  Could you upload a
picture somewhere?

> I want to make a model for deformed boundary without these spitz
> pattern, but it seems that I should link the moved boundary
> nodes each other by adding new boundary lines .

This seems very unlikely.  I might be misunderstanding the problem,
but generally with a deforming domain you want to change the geometry
but not the topology.

> 2) Libmesh can calculate the fem physics in one mesh in parallel, as
> like example introduction_ex4.C

> However, what I want to do is calculating two mesh with same fem
> physics in parallel.
> 
> By using Parallel::Communicator class with
> 
>   LibmeshInit init (argc,argv);
>   Parallel::Communicator & comm = init.comm();
> 
> I can assign the work for each processor along it's rank (ex, 
> processor_id_type rank = comm.rank();)
> 
> Each processor will define mesh object, equation systems object, and system 
> object, and then solve each system.

The key here is: how do you define the mesh object?  If you just use
comm above, then you will get a Mesh defined over all processors,
because init.comm() includes all processors libMesh sees.  You'll need
to do something like Communicator::split to get a new Communicator
defined over a subset of processors, then create a Mesh using just
that.

I don't think we have enough (or any?...) test coverage on that use
case, so please let us know ASAP (preferably via libmesh-devel or a
Github issue) if you run into anything which looks like a bug, or
(preferably via libmesh-users) if you need more assistance.
---
Roy
_______________________________________________
Libmesh-users mailing list
Libmesh-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to