Copying to libmesh-devel; I know Ben's interested in the state of ALE
too.

On Tue, 11 May 2010, David Knezevic wrote:

> I had a bit of spare time yesterday, so I thought I'd have another look at 
> some mesh motion in FEMSystem. The API seems simple enough: I've added two 
> extra isoparametric variables "x" and "y", and put the following code in 
> init_data:
>
>  this->time_evolving(x_var);
>  this->time_evolving(y_var);
>  set_mesh_system(this);
>  set_mesh_x_var(x_var);
>  set_mesh_y_var(y_var);

This should be right.

> and then, just to start with something simple, I tried to add vertical mesh 
> motion via:
>
>  Fy(i) += JxW[qp] * ( -0.1*phi[i][qp] );

This looks like a good test case.

> In the main function, I initialized x and y by calling 
> system.mesh_position_get().

I do this in init_data() as well, but depending on where in main() you
do it, that could be fine.

> But in the solve I hit an assertion related to an 
> unclosed vector:
>
> Assertion `v.closed()' failed.
> [0] src/numerics/petsc_vector.C, line 583, compiled May 11 2010 at 10:48:31
>
> #8  0x00007f54f8464cb6 in UnsteadySolver::advance_timestep (this=0x1eda090)
>    at src/solvers/unsteady_solver.C:131

I'm not sure what's happening here.

So it's asserting that the solution vector hasn't been closed after
the solve?  That mesh_position_get() call would have unclosed the
solution vector, but the solver should have closed it again.

There's two outstanding bugs in parallel: there ought to be a
mesh_position_set() call added to end of FEMSystem::solve(), to make
sure that the mesh on non-local elements gets moved properly in
parallel runs.  And mesh_position_set() needs to build a temporary
SERIAL vector of mesh position data so it can get non-ghost element
positions right.  But those are orthogonal problems to an unclosed
vector.
---
Roy

------------------------------------------------------------------------------

_______________________________________________
Libmesh-devel mailing list
Libmesh-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to