[dune-fem] UG linking problems

Tom Ranner t.ranner at warwick.ac.uk
Fri Sep 14 12:47:36 CEST 2012


Both compile and run fine.

Tom

On 14 September 2012 11:37, Dedner, Andreas <A.S.Dedner at warwick.ac.uk>wrote:

>  Hi Tom.
>
> This does not really look like a dune-fem problem to me.
> Could you try the test in dune-grid, i.e.,
> in dune/grid/test try make test-ug test-parallel-ug
> Does that work?
>
> Best
> Andreas
>
>  ------------------------------
> *From:* dune-fem-bounces+a.s.dedner=warwick.ac.uk at dune-project.org[dune-fem-bounces+a.s.dedner=
> warwick.ac.uk at dune-project.org] on behalf of Tom Ranner [
> t.ranner at warwick.ac.uk]
> *Sent:* 14 September 2012 11:15
> *To:* dune-fem at dune-project.org
> *Subject:* [dune-fem] UG linking problems
>
>  Dear all,
>
>  From reading [
> http://users.dune-project.org/projects/1/wiki/Grid-Manager_Features], I
> understand that if I want to use a supported 3D grid manager that uses
> simplices and uses a conforming refinement routine on parallel meshes, I
> should use UG.
>
>  The instructions from [
> http://www.dune-project.org/external_libraries/install_ug.html] seem
> unclear when compiling against the 2.2 release of DUNE. The set of patches
> for the 2.0 release of DUNE lead to a configure error (the version is too
> old) so that UG is not enabled. The set of patches for the current svn
> version of DUNE configure fine and work well with the code in
> dune-grid-howto (parfinitevolume.cc).
>
>  However, when using UGGRID as the GRIDTYPE with dune-fem code (for
> example the school code in 03.poisson/src/poisson.cc) leads to the
> following compiler error:
>
> $ make poisson GRIDTYPE=UGGRID
> mpic++ -std=c++0x -DHAVE_CONFIG_H -I. -I../../..  -I/home/tom/software/dune/dune-common -I/home/tom/software/dune/dune-istl -I/home/tom/software/dune/dune-geometry -I/home/tom/software/dune/dune-grid -I/home/tom/software/dune/dune-localfunctions -I/home/tom/software/dune/dune-fem-1.3.0 -I/home/tom/software/dune/dune-common  -I/home/tom/software/dune/dune-istl  -I/home/tom/software/dune/dune-geometry  -I/home/tom/software/dune/dune-grid  -I/home/tom/software/dune/dune-localfunctions  -I/home/tom/software/dune/modules/SuiteSparse/UMFPACK/Include -I/home/tom/software/dune/modules/SuiteSparse/UFconfig -I/home/tom/software/dune/modules/SuiteSparse/AMD/Include -DENABLE_UMFPACK=1 -I/home/tom/software/dune/dune-fem-1.3.0   -I/usr/lib/openmpi/include -I/usr/lib/openmpi/include/openmpi -pthread -DMPIPP_H -DENABLE_MPI=1 -I/home/tom/software/dune/dune-common  -I/home/tom/software/dune/dune-istl -I/home/tom/software/dune/dune-geometry -DGRIDDIM=2 -DWORLDDIM=2 -DUGGRID -I/home/tom/software/dune/modules/alberta-3.x-20120316-3708/include -I/home/tom/software/dune/modules/alberta-3.x-20120316-3708/include/alberta -DALBERTA_DIM=2 -DENABLE_ALBERTA -I/usr/lib/openmpi/include -I/usr/lib/openmpi/include/openmpi -pthread -DMPIPP_H -DENABLE_MPI=1 -I/home/tom/software/dune/modules/UG/ug/install/include/ug   -DENABLE_UG -DModelP -I/usr/lib/openmpi/include -I/usr/lib/openmpi/include/openmpi -pthread -DMPIPP_H -DENABLE_MPI=1 -I/home/tom/software/dune/modules/ALUGrid-1.50/include -I/home/tom/software/dune/modules/ALUGrid-1.50/include/serial -I/home/tom/software/dune/modules/ALUGrid-1.50/include/duneinterface -DENABLE_ALUGRID -I/home/tom/software/dune/modules/ALUGrid-1.50/include/parallel -I/home/tom/software/dune/dune-grid -I/home/tom/software/dune/dune-localfunctions -I/home/tom/software/dune/modules/SuiteSparse/UMFPACK/Include -I/home/tom/software/dune/modules/SuiteSparse/UFconfig -I/home/tom/software/dune/modules/SuiteSparse/AMD/Include -DENABLE_UMFPACK=1 -I/home/tom/software/dune/dune-fem-1.3.0 -I/usr/lib/openmpi/include -I/usr/lib/openmpi/include/openmpi -pthread -DMPIPP_H -DENABLE_MPI=1 -DPOLORDER=1 -DWANT_ISTL=1   -O2 -Wall -Wfatal-errors -Wno-deprecated-declarations -MT poisson.o -MD -MP -MF .deps/poisson.Tpo -c -o poisson.o poisson.cc
> In file included from /home/tom/software/dune/dune-grid/dune/grid/uggrid.hh:104:0,
>                  from ../../../config.h:528,
>                  from poisson.cc:1:
> /home/tom/software/dune/dune-grid/dune/grid/uggrid/uggridleafiterator.hh: In member function ‘void Dune::UGGridLeafIterator<codim, pitype, GridImp>::globalIncrement() [with int codim = 1, Dune::PartitionIteratorType pitype = (Dune::PartitionIteratorType)4u, GridImp = const Dune::UGGrid<2>]’:
> /home/tom/software/dune/dune-grid/dune/grid/uggrid/uggridleafiterator.hh:63:13:   instantiated from ‘void Dune::UGGridLeafIterator<codim, pitype, GridImp>::increment() [with int codim = 1, Dune::PartitionIteratorType pitype = (Dune::PartitionIteratorType)4u, GridImp = const Dune::UGGrid<2>]’
> /home/tom/software/dune/dune-grid/dune/grid/common/entityiterator.hh:47:7:   instantiated from ‘Dune::EntityIterator<codim, Grid, IteratorImp>& Dune::EntityIterator<codim, Grid, IteratorImp>::operator++() [with int codim = 1, Grid = const Dune::UGGrid<2>, IteratorImp = Dune::UGGridLeafIterator<1, (Dune::PartitionIteratorType)4u, const Dune::UGGrid<2> >, Dune::EntityIterator<codim, Grid, IteratorImp> = Dune::EntityIterator<1, const Dune::UGGrid<2>, Dune::UGGridLeafIterator<1, (Dune::PartitionIteratorType)4u, const Dune::UGGrid<2> > >]’
> /home/tom/software/dune/dune-fem-1.3.0/dune/fem/gridpart/adaptiveleafindexset.hh:998:66:   instantiated from ‘void Dune::Fem::AdaptiveIndexSetBase<TraitsImp>::setupCodimSet(const std::integral_constant<bool, true>&) const [with int codim = 1, TraitsImp = Dune::Fem::AdaptiveLeafIndexSetTraits<Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false> >]’
> /home/tom/software/dune/dune-fem-1.3.0/dune/fem/gridpart/adaptiveleafindexset.hh:510:11:   instantiated from ‘Dune::Fem::AdaptiveIndexSetBase<TraitsImp>::IndexType Dune::Fem::AdaptiveIndexSetBase<TraitsImp>::index(const typename TraitsImp::GridPartType::GridType::Codim<codim>::Entity&) const [with int codim = 1, TraitsImp = Dune::Fem::AdaptiveLeafIndexSetTraits<Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false> >, Dune::Fem::AdaptiveIndexSetBase<TraitsImp>::IndexType = unsigned int, typename TraitsImp::GridPartType::GridType::Codim<codim>::Entity = Dune::Entity<1, 2, const Dune::UGGrid<2>, Dune::UGGridEntity>]’
> /home/tom/software/dune/dune-fem-1.3.0/dune/fem/gridpart/adaptiveleafindexset.hh:499:53:   instantiated from ‘Dune::Fem::AdaptiveIndexSetBase<TraitsImp>::IndexType Dune::Fem::AdaptiveIndexSetBase<TraitsImp>::index(const Entity&) const [with Entity = Dune::UGMakeableEntity<1, 2, Dune::UGGrid<2> >, TraitsImp = Dune::Fem::AdaptiveLeafIndexSetTraits<Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false> >, Dune::Fem::AdaptiveIndexSetBase<TraitsImp>::IndexType = unsigned int]’
> /home/tom/software/dune/dune-fem-1.3.0/dune/fem/space/dofmapper/dofmapper.hh:481:70:   [ skipping 12 instantiation contexts ]
> /home/tom/software/dune/dune-fem-1.3.0/dune/fem/function/common/discretefunction_inline.hh:169:59:   instantiated from ‘Dune::Fem::DiscreteFunctionDefault<DFTraits>::RangeFieldType Dune::Fem::DiscreteFunctionDefault<DFTraits>::scalarProductDofs(const DiscreteFunctionInterfaceType&) const [with DiscreteFunctionTraits = Dune::Fem::AdaptiveDiscreteFunctionTraits<Dune::Fem::LagrangeDiscreteFunctionSpace<Dune::Fem::FunctionSpace<double, double, 2, 1>, Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false>, 1, Dune::Fem::CachingStorage> >, Dune::Fem::DiscreteFunctionDefault<DFTraits>::RangeFieldType = double, Dune::Fem::DiscreteFunctionDefault<DFTraits>::DiscreteFunctionInterfaceType = Dune::Fem::DiscreteFunctionInterface<Dune::Fem::AdaptiveDiscreteFunctionTraits<Dune::Fem::LagrangeDiscreteFunctionSpace<Dune::Fem::FunctionSpace<double, double, 2, 1>, Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false>, 1, Dune::Fem::CachingStorage> > >]’
> /home/tom/software/dune/dune-fem-1.3.0/dune/fem/solver/cginverseoperator.hh:444:87:   instantiated from ‘void Dune::Fem::ConjugateGradientSolver<Operator>::solve(const OperatorType&, const PreconditionerType&, const RangeFunctionType&, Dune::Fem::ConjugateGradientSolver<Operator>::DomainFunctionType&) const [with Operator = Dune::Fem::Operator<Dune::Fem::AdaptiveDiscreteFunction<Dune::Fem::LagrangeDiscreteFunctionSpace<Dune::Fem::FunctionSpace<double, double, 2, 1>, Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false>, 1, Dune::Fem::CachingStorage> >, Dune::Fem::AdaptiveDiscreteFunction<Dune::Fem::LagrangeDiscreteFunctionSpace<Dune::Fem::FunctionSpace<double, double, 2, 1>, Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false>, 1, Dune::Fem::CachingStorage> > >, Dune::Fem::ConjugateGradientSolver<Operator>::OperatorType = Dune::Fem::Operator<Dune::Fem::AdaptiveDiscreteFunction<Dune::Fem::LagrangeDiscreteFunctionSpace<Dune::Fem::FunctionSpace<double, double, 2, 1>, Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false>, 1, Dune::Fem::CachingStorage> >, Dune::Fem::AdaptiveDiscreteFunction<Dune::Fem::LagrangeDiscreteFunctionSpace<Dune::Fem::FunctionSpace<double, double, 2, 1>, Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false>, 1, Dune::Fem::CachingStorage> > >, Dune::Fem::ConjugateGradientSolver<Operator>::PreconditionerType = Dune::Fem::Operator<Dune::Fem::AdaptiveDiscreteFunction<Dune::Fem::LagrangeDiscreteFunctionSpace<Dune::Fem::FunctionSpace<double, double, 2, 1>, Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false>, 1, Dune::Fem::CachingStorage> >, Dune::Fem::AdaptiveDiscreteFunction<Dune::Fem::LagrangeDiscreteFunctionSpace<Dune::Fem::FunctionSpace<double, double, 2, 1>, Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false>, 1, Dune::Fem::CachingStorage> > >, typename Operator::DomainFunctionType = Dune::Fem::AdaptiveDiscreteFunction<Dune::Fem::LagrangeDiscreteFunctionSpace<Dune::Fem::FunctionSpace<double, double, 2, 1>, Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false>, 1, Dune::Fem::CachingStorage> >, typename Operator::RangeFunctionType = Dune::Fem::AdaptiveDiscreteFunction<Dune::Fem::LagrangeDiscreteFunctionSpace<Dune::Fem::FunctionSpace<double, double, 2, 1>, Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false>, 1, Dune::Fem::CachingStorage> >, Dune::Fem::ConjugateGradientSolver<Operator>::RangeFunctionType = Dune::Fem::AdaptiveDiscreteFunction<Dune::Fem::LagrangeDiscreteFunctionSpace<Dune::Fem::FunctionSpace<double, double, 2, 1>, Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false>, 1, Dune::Fem::CachingStorage> >, Dune::Fem::ConjugateGradientSolver<Operator>::DomainFunctionType = Dune::Fem::AdaptiveDiscreteFunction<Dune::Fem::LagrangeDiscreteFunctionSpace<Dune::Fem::FunctionSpace<double, double, 2, 1>, Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false>, 1, Dune::Fem::CachingStorage> >]’
> /home/tom/software/dune/dune-fem-1.3.0/dune/fem/solver/cginverseoperator.hh:254:13:   instantiated from ‘void Dune::Fem::Solver::CGInverseOperator<DiscreteFunction>::operator()(const DomainFunctionType&, Dune::Fem::Solver::CGInverseOperator<DiscreteFunction>::RangeFunctionType&) const [with DiscreteFunction = Dune::Fem::AdaptiveDiscreteFunction<Dune::Fem::LagrangeDiscreteFunctionSpace<Dune::Fem::FunctionSpace<double, double, 2, 1>, Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false>, 1, Dune::Fem::CachingStorage> >, Dune::Fem::Solver::CGInverseOperator<DiscreteFunction>::DomainFunctionType = Dune::Fem::AdaptiveDiscreteFunction<Dune::Fem::LagrangeDiscreteFunctionSpace<Dune::Fem::FunctionSpace<double, double, 2, 1>, Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false>, 1, Dune::Fem::CachingStorage> >, Dune::Fem::Solver::CGInverseOperator<DiscreteFunction>::RangeFunctionType = Dune::Fem::AdaptiveDiscreteFunction<Dune::Fem::LagrangeDiscreteFunctionSpace<Dune::Fem::FunctionSpace<double, double, 2, 1>, Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false>, 1, Dune::Fem::CachingStorage> >]’
> femscheme.hh:149:5:   instantiated from ‘void FemScheme<Model>::solve(bool) [with Model = DiffusionModel<Dune::Fem::FunctionSpace<double, double, 2, 1>, Dune::Fem::AdaptiveLeafGridPart<Dune::UGGrid<2>, (Dune::PartitionIteratorType)1u, false> >]’
> poisson.cc:67:3:   instantiated from ‘double algorithm(HGridType&, int) [with HGridType = Dune::UGGrid<2>]’
> poisson.cc:137:61:   instantiated from here
> /home/tom/software/dune/dune-grid/dune/grid/uggrid/uggridleafiterator.hh:124:9: error: invalid conversion from ‘void*’ to ‘Dune::UG_NS<2>::Entity<1>::T* {aka UG::D2::edge*}’ [-fpermissive]
> compilation terminated due to -Wfatal-errors.
> make: *** [poisson.o] Error 1
>
>   For information,
>
> $ mpic++ --version
> g++ (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
> Copyright (C) 2011 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.  There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>
>  I use the core dune modules release version 2.2 and dune-fem 1.3.0. I've
> attached the config.log files for dune-grid, dune-fem and ug.
>
>  Does anyone have any ideas what I'm doing wrong and how to fix this?
>
>  Kind Regards,
> Tom
>
> _______________________________________________
> dune-fem mailing list
> dune-fem at dune-project.org
> http://lists.dune-project.org/mailman/listinfo/dune-fem
>
>


-- 
Tom Ranner
Mathematics Institute
Zeeman Building
University of Warwick
Coventry
CV4 7AL

Email: t.ranner at warwick.ac.uk
Tel: +44 (0) 7861 173636
Web: go.warwick.ac.uk/tranner
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.dune-project.org/pipermail/dune-fem/attachments/20120914/1c9163bf/attachment.htm>


More information about the dune-fem mailing list