Thank you for the reply.
However, I still don't know how to fix it. Any hints?

I am not using libmesh master.


Regards,
Li Luo



-----Original Messages-----
From:"John Peterson" <jwpeter...@gmail.com>
Sent Time:2018-05-17 00:19:38 (Thursday)
To: "li.luo" <li....@siat.ac.cn>
Cc: libmesh-users <libmesh-users@lists.sourceforge.net>
Subject: Re: [Libmesh-users] The use of MONOMIAL/XYZ FE_type






On Wed, May 16, 2018 at 6:53 AM, <li....@siat.ac.cn> wrote:
Dear developers,




I tried using the MONOMIAL/XYZ FE_type as in the miscellaneous_ex5 example.


After simplification under the choice of some parameters, my problem reduces to 
a Laplace equation with Dirichlet boundary condition.
If a default FE_type is used (system.add_variable ("p", FIRST);), the Laplace 
problem outputs a right result,
but if a MONOMIAL/XYZ FE_type is used instead (i.e. system.add_variable ("p", 
FIRST, XYZ)), 
the interior part is wrong, it isn't changed from its initial solution value (I 
set zero for the initial value),
only the boundary is right due to the impose of Dirichlet condition.
I have implemented the contribution of each element boundary flux as that in 
the miscellaneous_ex5 example.
I don't know why it fails in the interior part.



I'm not sure why XYZ would not work. It's possible that the solution is 
actually OK but the error arises in the 
ExodusII::write_discontinuous_exodusII() output? 


I don't think we have much testing of the XYZ FEType in libmesh or in apps 
which use libmesh, so it's possible that i regressed.




 
2.  Another question is, if I want to couple two variables into one system, one 
with a default FE_type and the other with the MONOMIAL/XYZ FE_type, is that 
possible?
I tried and found that when inserting the contribution of neighbor values into 
the matrix (as "Ken, Kne" in miscellaneous_ex5),
PETSc error reports that
---------------------------------------------------------------
Argument out of range!
New nonzero at (13,33164) caused a malloc!
MatSetValues_MPIAIJ() line 572 in src/mat/impls/aij/mpi/mpiaij.c
MatSetValues() line 1106 in src/mat/interface/matrix.c
add_matrix() line 699 in "unknowndirectory/"petsc_matrix.C
---------------------------------------------------------------


It seems that different FE_types lead to different matrix preallocations,
the MONOMIAL/XYZ FE_type allows the insert of Ken, Kne but the default FE_type 
does not.
Can I use the same matrix preallocation for the two variables to allow such 
inserting?



And you are using libmesh master? This is interesting, as we are discussing a 
similar error right now over on https://github.com/libMesh/libmesh/issues/1697 
that might be related, although I suspect yours might have more to do with DG 
sparsity patterns.


--

John

--
Shenzhen Institutes of Advanced Technology, Chinese Academy of Sciences 1068 
Xueyuan Avenue, Shenzhen University Town, Shenzhen, P. R. China Tel: +86 
13691688103 Mail: li....@siat.ac.cn https://sites.google.com/site/rolyliluo/
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Libmesh-users mailing list
Libmesh-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to