> You must be adding the constraint rows after the matrix has been
> preallocated...  Regardless of whether PeriodicBoundary calls would
> fix your problem, we ought to make sure that users are able and
> encouraged to do efficient preallocation for arbitrary user
> constraints, too.

The DOF connectivity is established during EquationSystems::init().  So you
must add any user-defined constraints before this time.  The matrix itself
is not actually allocated until the first call to EquationSystems::solve(),
but when it is allocated it is using a pre-computed sparsity pattern.

The proper place to do this is to provide a function pointer which is called
by System::user_constrain():
http://libmesh.sourceforge.net/doxygen/classSystem.php#8dd9e548cdc41149155da
0a92eefa591

Try that, it should fix your problem.

-Ben
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Libmesh-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to