Renato, please check to see whether https://github.com/libMesh/libmesh/pull/1836 fixes your issue. It appears to work to me on the example you sent
On Sat, Aug 25, 2018 at 3:16 PM, Renato Poli <rebp...@gmail.com> wrote: > Hi Alexander, > > Please find attached the example you asked. > I used introduction_ex3 as a basis... it got a little messy, I hope it is > enough. > Please let me know otherwise. > > Thanks > Renato > > On Sat, Aug 25, 2018 at 12:42 PM Renato Poli <rebp...@gmail.com> wrote: > >> Sure.... please give me a couple of hours. >> >> On Sat, Aug 25, 2018 at 12:04 PM Alexander Lindsay < >> alexlindsay...@gmail.com> wrote: >> >>> Renato, could you create a minimum example that generates the >>> discontinuous error, and either share it here or create a ticket on github? >>> That would be useful for fixing the issue and adding a test in libmesh to >>> ensure we support the capability. >>> >>> On Sat, Aug 25, 2018 at 8:33 AM, Alexander Lindsay < >>> alexlindsay...@gmail.com> wrote: >>> >>>> Ah yes...key difference between "empty" and "zero"... >>>> >>>> On Aug 25, 2018, at 7:03 AM, Renato Poli <rebp...@gmail.com> wrote: >>>> >>>> No success. Stack trace below. >>>> >>>> Note that, if I define my variable _only_ on its domain (where there is >>>> fluid) it works. >>>> >>>> In this case, the problem is in ExodusII_IO::write_discontinuous_timestep. >>>> >>>> >>>> [0]PETSC ERROR: --------------------- Error Message >>>> -------------------------------------------------------------- >>>> [0]PETSC ERROR: Object is in wrong state >>>> [0]PETSC ERROR: Matrix is missing diagonal entry 0 >>>> [0]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html >>>> for trouble shooting. >>>> [0]PETSC ERROR: Petsc Release Version 3.7.6, Apr, 24, 2017 >>>> [0]PETSC ERROR: obj/bin/abada_sc11 on a linux-gnu-opt named dev-vb by dev >>>> Sat Aug 25 09:55:36 2018 >>>> [0]PETSC ERROR: Configure options --with-mpi-dir=/usr/lib/mpich >>>> --with-shared-libraries=1 --with-debugging=yes --download-mumps >>>> --download-hypre --download-scalapack --download-spai --download-parms >>>> [0]PETSC ERROR: #1 MatLUFactorSymbolic_SeqAIJ() line 301 in >>>> /opt/petsc-3.7.6/src/mat/impls/aij/seq/aijfact.c >>>> [0]PETSC ERROR: #2 MatLUFactorSymbolic() line 2944 in >>>> /opt/petsc-3.7.6/src/mat/interface/matrix.c >>>> [0]PETSC ERROR: #3 PCSetUp_LU() line 136 in >>>> /opt/petsc-3.7.6/src/ksp/pc/impls/factor/lu/lu.c >>>> [0]PETSC ERROR: #4 PCSetUp() line 968 in >>>> /opt/petsc-3.7.6/src/ksp/pc/interface/precon.c >>>> [0]PETSC ERROR: #5 KSPSetUp() line 390 in >>>> /opt/petsc-3.7.6/src/ksp/ksp/interface/itfunc.c >>>> [0]PETSC ERROR: #6 KSPSolve() line 599 in >>>> /opt/petsc-3.7.6/src/ksp/ksp/interface/itfunc.c >>>> >>>> Thanks, >>>> >>>> Renato >>>> >>>> >>>> On Fri, Aug 24, 2018 at 11:49 PM Alexander Lindsay < >>>> alexlindsay...@gmail.com> wrote: >>>> >>>>> If you're using PETSc as your underlying solver, try the options >>>>> `-pc_factor_shift_type NONZERO -pc_factor_shift_amount 1e-15` >>>>> >>>>> On Thu, Aug 23, 2018 at 2:58 PM, Renato Poli <rebp...@gmail.com> >>>>> wrote: >>>>> >>>>>> Hi >>>>>> >>>>>> I am getting trouble here again ... really need some help. >>>>>> >>>>>> I have part of the domain without flow (and thus without the pressure >>>>>> variable defined). >>>>>> As I could not export that (could not get >>>>>> write_discontinuous_exodusII to >>>>>> work) I just left the matrix empty, without major impact so far. >>>>>> However, now I am using LU preconditioning, which does not accept >>>>>> empty >>>>>> entries in the diagonal. >>>>>> >>>>>> How can I get through? >>>>>> Any suggestion? >>>>>> >>>>>> Thanks upfront. >>>>>> Renato >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> On Thu, Aug 16, 2018 at 6:47 PM Renato Poli <rebp...@gmail.com> >>>>>> wrote: >>>>>> >>>>>> > Hi >>>>>> > >>>>>> > I see the stack trace below when writing a discontinuous timestep >>>>>> > (exo.write_discontinuous_timestep). >>>>>> > It happens when my variable is set only in part of the domain. >>>>>> > No problem arises if I use, instead: exo.write_equation_systems(fname, >>>>>> es) >>>>>> > >>>>>> > Any hint/workaround/idea? >>>>>> > >>>>>> > Thanks, >>>>>> > Renato >>>>>> > >>>>>> > This is how the variable is set. >>>>>> > | std::set<subdomain_id_type> active_subdomains; >>>>>> > | active_subdomains.clear(); >>>>>> > | active_subdomains.insert(SUBDOMAIN_A); >>>>>> > | press_sys.add_variable ("p", SECOND, LAGRANGE, & >>>>>> active_subdomains); >>>>>> > >>>>>> > 0: libMesh::print_trace(std::ostream&) >>>>>> > 1: libMesh::MacroFunctions::report_error(char const*, int, char >>>>>> const*, >>>>>> > char const*) >>>>>> > 2: >>>>>> > libMesh::EquationSystems::build_discontinuous_solution_ >>>>>> vector(std::__debug::vector<double, >>>>>> > std::allocator<double> >&, >>>>>> > std::__debug::set<std::__cxx11::basic_string<char, >>>>>> std::char_traits<char>, >>>>>> > std::allocator<char> >, std::less<std::__cxx11::basic_string<char, >>>>>> > std::char_traits<char>, std::allocator<char> > >, >>>>>> > std::allocator<std::__cxx11::basic_string<char, >>>>>> std::char_traits<char>, >>>>>> > std::allocator<char> > > > const*) const >>>>>> > 3: >>>>>> > libMesh::ExodusII_IO::write_discontinuous_exodusII(std::__ >>>>>> cxx11::basic_string<char, >>>>>> > std::char_traits<char>, std::allocator<char> > const&, >>>>>> > libMesh::EquationSystems const&, >>>>>> > std::__debug::set<std::__cxx11::basic_string<char, >>>>>> std::char_traits<char>, >>>>>> > std::allocator<char> >, std::less<std::__cxx11::basic_string<char, >>>>>> > std::char_traits<char>, std::allocator<char> > >, >>>>>> > std::allocator<std::__cxx11::basic_string<char, >>>>>> std::char_traits<char>, >>>>>> > std::allocator<char> > > > const*) >>>>>> > 4: >>>>>> > libMesh::ExodusII_IO::write_timestep_discontinuous(std::__ >>>>>> cxx11::basic_string<char, >>>>>> > std::char_traits<char>, std::allocator<char> > const&, >>>>>> > libMesh::EquationSystems const&, int, double, >>>>>> > std::__debug::set<std::__cxx11::basic_string<char, >>>>>> std::char_traits<char>, >>>>>> > std::allocator<char> >, std::less<std::__cxx11::basic_string<char, >>>>>> > std::char_traits<char>, std::allocator<char> > >, >>>>>> > std::allocator<std::__cxx11::basic_string<char, >>>>>> std::char_traits<char>, >>>>>> > std::allocator<char> > > > const*) >>>>>> > >>>>>> > >>>>>> ------------------------------------------------------------ >>>>>> ------------------ >>>>>> 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 >>>>>> >>>>> >>>>> >>> ------------------------------------------------------------------------------ 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