Hi Martin, yes it does... as I wrote in the case dim=2 and spacedim=1 its working...
Best Uwe Sent from Samsung MobileMartin Steigemann <[email protected]> wrote:Hi Uwe, does your vector x contains all locally_relevant components and not only the locally_owned ones? DataOut needs also the ghost values, so first you should check this. Maybe this helps, Best, Martin Von: Uwe Köcher <[email protected]> An: [email protected] Gesendet: 21:55 Donnerstag, 26.Juli 2012 Betreff: [deal.II] Problem with vtu output on multiple processes (MPI/Trilinos) Hi, I want to write a distributed vector (TrilionsWrappers::MPI::Vector) of a FESystem(fe, 3). So my dim=3 and the spacedim=3. When I'm (essentially) doing: DataOut<dim> data_out; data_out.attach_dof_handler(dof); data_out.add_data_vector(x, name); data_out.build_patches(); I get an exception, thrown in the deep library, that one Function wants to access a non-locally owned element of the vector: ********************************************************************** An error occurred in line <205> of file </home/koecheru/toolbox/deal.II/svn/source/lac/trilinos_vector_base.cc> in function double dealii::TrilinosWrappers::VectorBase::operator()(unsigned int) const The violated condition was: false The name and call sequence of the exception was: ExcAccessToNonlocalElement(index, local_range().first, local_range().second-1) Additional Information: You tried to access element 111 of a distributed vector, but only entries 648 through 1088 are stored locally and can be accessed. ********************************************************************** If I'm running on only one process everything is fine (due to the process owns all elements of the vector). Please note, my output-function is running fine on multiple processes with dim=2 and spacedim=1 in another application. And a second note: Without file-output the application is running fine on multiple processes. Any help would be nice. Best Uwe. Here the complete stacktrace: ********************************************************************** Stacktrace: ----------- #0 /home/koecheru/toolbox/deal.II/svn/lib/libdeal_II.g.so.7.2.pre: dealii::TrilinosWrappers::VectorBase::operator()(unsigned int) const #1 /home/koecheru/toolbox/deal.II/svn/lib/libdeal_II.g.so.7.2.pre: void dealii::internal::DoFCellAccessor::Implementation::get_dof_values<3, 3, dealii::TrilinosWrappers::MPI::Vector, double*>(dealii::DoFCellAccessor<dealii::DoFHandler<3, 3> > const&, dealii::TrilinosWrappers::MPI::Vector const&, double*, double*) #2 /home/koecheru/toolbox/deal.II/svn/lib/libdeal_II.g.so.7.2.pre: void dealii::DoFCellAccessor<dealii::DoFHandler<3, 3> >::get_dof_values<dealii::TrilinosWrappers::MPI::Vector, double>(dealii::TrilinosWrappers::MPI::Vector const&, dealii::Vector<double>&) const #3 /home/koecheru/toolbox/deal.II/svn/lib/libdeal_II.g.so.7.2.pre: void dealii::DoFCellAccessor<dealii::DoFHandler<3, 3> >::get_interpolated_dof_values<dealii::TrilinosWrappers::MPI::Vector, double>(dealii::TrilinosWrappers::MPI::Vector const&, dealii::Vector<double>&) const #4 /home/koecheru/toolbox/deal.II/svn/lib/libdeal_II.g.so.7.2.pre: dealii::FEValuesBase<3, 3>::CellIterator<dealii::TriaIterator<dealii::DoFCellAccessor<dealii::DoFHandler<3, 3> > > >::get_interpolated_dof_values(dealii::TrilinosWrappers::MPI::Vector const&, dealii::Vector<double>&) const #5 /home/koecheru/toolbox/deal.II/svn/lib/libdeal_II.g.so.7.2.pre: void dealii::FEValuesBase<3, 3>::get_function_values<dealii::TrilinosWrappers::MPI::Vector, double>(dealii::TrilinosWrappers::MPI::Vector const&, std::vector<dealii::Vector<double>, std::allocator<dealii::Vector<double> > >&) const #6 /home/koecheru/toolbox/deal.II/svn/lib/libdeal_II.g.so.7.2.pre: dealii::internal::DataOut::DataEntry<dealii::DoFHandler<3, 3>, dealii::TrilinosWrappers::MPI::Vector>::get_function_values(dealii::FEValuesBase<3, 3> const&, std::vector<dealii::Vector<double>, std::allocator<dealii::Vector<double> > >&) const #7 /home/koecheru/toolbox/deal.II/svn/lib/libdeal_II.g.so.7.2.pre: dealii::DataOut<3, dealii::DoFHandler<3, 3> >::build_one_patch(std::pair<dealii::TriaIterator<dealii::DoFCellAccessor<dealii::DoFHandler<3, > 3> > >, unsigned int> const*, dealii::internal::DataOut::ParallelData<3, 3>&, >dealii::DataOutBase::Patch<3, 3>&, dealii::DataOut<3, dealii::DoFHandler<3, 3> >>::CurvedCellRegion) #8 /home/koecheru/toolbox/deal.II/svn/lib/libdeal_II.g.so.7.2.pre: std::_Mem_fn<void (dealii::DataOut<3, dealii::DoFHandler<3, 3> >::*)(std::pair<dealii::TriaIterator<dealii::DoFCellAccessor<dealii::DoFHandler<3, > 3> > >, unsigned int> const*, dealii::internal::DataOut::ParallelData<3, 3>&, >dealii::DataOutBase::Patch<3, 3>&, dealii::DataOut<3, dealii::DoFHandler<3, 3> >>::CurvedCellRegion)>::operator()(dealii::DataOut<3, dealii::DoFHandler<3, 3> >>&, >std::pair<dealii::TriaIterator<dealii::DoFCellAccessor<dealii::DoFHandler<3, >3> > >, unsigned int> const*, dealii::internal::DataOut::ParallelData<3, 3>&, >dealii::DataOutBase::Patch<3, 3>&, dealii::DataOut<3, dealii::DoFHandler<3, 3> >>::CurvedCellRegion) const #9 /home/koecheru/toolbox/deal.II/svn/lib/libdeal_II.g.so.7.2.pre: void std::_Bind<std::_Mem_fn<void (dealii::DataOut<3, dealii::DoFHandler<3, 3> >::*)(std::pair<dealii::TriaIterator<dealii::DoFCellAccessor<dealii::DoFHandler<3, > 3> > >, unsigned int> const*, dealii::internal::DataOut::ParallelData<3, 3>&, >dealii::DataOutBase::Patch<3, 3>&, dealii::DataOut<3, dealii::DoFHandler<3, 3> >>::CurvedCellRegion)> (dealii::DataOut<3, dealii::DoFHandler<3, 3> >, >std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>, >dealii::DataOut<3, dealii::DoFHandler<3, 3> >>::CurvedCellRegion)>::__call<void, >std::pair<dealii::TriaIterator<dealii::DoFCellAccessor<dealii::DoFHandler<3, >3> > >, unsigned int>*&, dealii::internal::DataOut::ParallelData<3, 3>&, >dealii::DataOutBase::Patch<3, 3>&, 0, 1, 2, 3, >4>(std::tuple<std::pair<dealii::TriaIterator<dealii::DoFCellAccessor<dealii::DoFHandler<3, > 3> > >, unsigned int>*&, dealii::internal::DataOut::ParallelData<3, 3>&, >dealii::DataOutBase::Patch<3, 3>&>&&, std::_Index_tuple<0, 1, 2, 3, 4>) #10 /home/koecheru/toolbox/deal.II/svn/lib/libdeal_II.g.so.7.2.pre: void std::_Bind<std::_Mem_fn<void (dealii::DataOut<3, dealii::DoFHandler<3, 3> >::*)(std::pair<dealii::TriaIterator<dealii::DoFCellAccessor<dealii::DoFHandler<3, > 3> > >, unsigned int> const*, dealii::internal::DataOut::ParallelData<3, 3>&, >dealii::DataOutBase::Patch<3, 3>&, dealii::DataOut<3, dealii::DoFHandler<3, 3> >>::CurvedCellRegion)> (dealii::DataOut<3, dealii::DoFHandler<3, 3> >, >std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>, >dealii::DataOut<3, dealii::DoFHandler<3, 3> >>::CurvedCellRegion)>::operator()<std::pair<dealii::TriaIterator<dealii::DoFCellAccessor<dealii::DoFHandler<3, > 3> > >, unsigned int>*&, dealii::internal::DataOut::ParallelData<3, 3>&, >dealii::DataOutBase::Patch<3, 3>&, >void>(std::pair<dealii::TriaIterator<dealii::DoFCellAccessor<dealii::DoFHandler<3, > 3> > >, unsigned int>*&&&, dealii::internal::DataOut::ParallelData<3, 3>&&&, >dealii::DataOutBase::Patch<3, 3>&&&) #11 /home/koecheru/toolbox/deal.II/svn/lib/libdeal_II.g.so.7.2.pre: void dealii::WorkStream::run<std::_Bind<std::_Mem_fn<void (dealii::DataOut<3, dealii::DoFHandler<3, 3> >::*)(std::pair<dealii::TriaIterator<dealii::DoFCellAccessor<dealii::DoFHandler<3, > 3> > >, unsigned int> const*, dealii::internal::DataOut::ParallelData<3, 3>&, >dealii::DataOutBase::Patch<3, 3>&, dealii::DataOut<3, dealii::DoFHandler<3, 3> >>::CurvedCellRegion)> (dealii::DataOut<3, dealii::DoFHandler<3, 3> >, >std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>, >dealii::DataOut<3, dealii::DoFHandler<3, 3> >::CurvedCellRegion)>, >std::_Bind<void (*(std::_Placeholder<1>, >std::reference_wrapper<std::vector<dealii::DataOutBase::Patch<3, 3>, >std::allocator<dealii::DataOutBase::Patch<3, 3> > > >>))(dealii::DataOutBase::Patch<3, 3> const&, >std::vector<dealii::DataOutBase::Patch<3, 3>, >std::allocator<dealii::DataOutBase::Patch<3, 3> > >&)>, >std::pair<dealii::TriaIterator<dealii::DoFCellAccessor<dealii::DoFHandler<3, >3> > >, unsigned int>*, dealii::internal::DataOut::ParallelData<3, 3>, >dealii::DataOutBase::Patch<3, 3> >>(std::pair<dealii::TriaIterator<dealii::DoFCellAccessor<dealii::DoFHandler<3, >3> > >, unsigned int>* const&, >dealii::identity<std::pair<dealii::TriaIterator<dealii::DoFCellAccessor<dealii::DoFHandler<3, > 3> > >, unsigned int>*>::type const&, std::_Bind<std::_Mem_fn<void >(dealii::DataOut<3, dealii::DoFHandler<3, 3> >>::*)(std::pair<dealii::TriaIterator<dealii::DoFCellAccessor<dealii::DoFHandler<3, > 3> > >, unsigned int> const*, dealii::internal::DataOut::ParallelData<3, 3>&, >dealii::DataOutBase::Patch<3, 3>&, dealii::DataOut<3, dealii::DoFHandler<3, 3> >>::CurvedCellRegion)> (dealii::DataOut<3, dealii::DoFHandler<3, 3> >, >std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>, >dealii::DataOut<3, dealii::DoFHandler<3, 3> >::CurvedCellRegion)>, >std::_Bind<void (*(std::_Placeholder<1>, >std::reference_wrapper<std::vector<dealii::DataOutBase::Patch<3, 3>, >std::allocator<dealii::DataOutBase::Patch<3, 3> > > >>))(dealii::DataOutBase::Patch<3, 3> const&, >std::vector<dealii::DataOutBase::Patch<3, 3>, >std::allocator<dealii::DataOutBase::Patch<3, 3> > >&)>, >dealii::internal::DataOut::ParallelData<3, 3> const&, >dealii::DataOutBase::Patch<3, 3> const&, unsigned int, unsigned int) #12 /home/koecheru/toolbox/deal.II/svn/lib/libdeal_II.g.so.7.2.pre: dealii::DataOut<3, dealii::DoFHandler<3, 3> >::build_patches(dealii::Mapping<3, 3> const&, unsigned int, dealii::DataOut<3, dealii::DoFHandler<3, 3> >::CurvedCellRegion) #13 /home/koecheru/toolbox/deal.II/svn/lib/libdeal_II.g.so.7.2.pre: dealii::DataOut<3, dealii::DoFHandler<3, 3> >::build_patches(unsigned int) #14 ./DTM++: _ZN5DTMpp10DataOutput6WriterILi3ELi3EN6dealii16TrilinosWrappers3MPI6VectorEE15vtu_in_parallelESsSsjRS5_RNS2_10DoFHandlerILi3ELi3EEEji+0x276) [0x456a66] #15 ./DTM++: _ZN5DTMpp8parallel11distributed2CG18ElasticWaveNewmarkILi3ELi3EE5solveEdd+0x327) [0x453d01] #16 ./DTM++: _ZN5DTMpp8parallel11distributed2CG18ElasticWaveNewmarkILi3ELi3EE3runEdd +0x37) [0x4518c1] #17 ./DTM++: main+0x272) [0x44cb77] #18 /lib64/libc.so.6: __libc_start_main #19 ./DTM++: ) [0x448df9] ********************************************************************** -- Dipl.-Ing. Uwe Köcher Helmut Schmidt Universität Universität der Bundeswehr Fakultät für Maschinenbau, Professur für Numerische Verfahren in den Rechnergestützten Ingenieurwissenschaften. Holstenhofweg 85 22043 Hamburg Tel: +49 40 6541 - 3241 Raum: H1 - R.1225 Email: [email protected] Web: http://www.hsu-hh.de/mb-mathe _______________________________________________ dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii
_______________________________________________ dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii
