[Dune] Dune::Alberta::DuneBoundaryProjection or Dune::DuneBoundaryProjection in AlbertaGrid constructor?
Dmitry Nikolaenko
dmitry.nikolaenko at uni-graz.at
Fri Nov 26 16:45:30 CET 2010
Dear DUNE,
I'm trying to build my program using Alberta (before I could
successfully with OneDGrid), but I encounter the following error (a
fragment of output):
g++ -std=c++0x -DHAVE_CONFIG_H -I. -I..
-I/home/dnikolae/DUNE/dune-common-2.0
-I/home/dnikolae/DUNE/dune-grid-2.0 -I/home/dnikolae/DUNE/dune-istl-2.0
-I/usr/lib/mpi/gcc/openmpi/include/openmpi
-I/usr/lib/mpi/gcc/openmpi/include -pthread -DMPIPP_H -DENABLE_MPI=1
-I/home/dnikolae/UG/ug/include -DENABLE_UG
-I/home/dnikolae/Alberta/include/alberta -DALBERTA_DIM=1
-DENABLE_ALBERTA -g -O2 -MT counterflow_dune-counterflow_dune.o -MD
-MP -MF .deps/counterflow_dune-counterflow_dune.Tpo -c -o
counterflow_dune-counterflow_dune.o `test -f 'counterflow_dune.cc' ||
echo './'`counterflow_dune.cc
/home/dnikolae/DUNE/dune-grid-2.0/dune/grid/albertagrid/projection.hh:
In constructor
'Dune::Alberta::DuneGlobalBoundaryProjectionFactory<dim>::DuneGlobalBoundaryProjectionFactory(const
typename
Dune::Alberta::ProjectionFactory<Dune::Alberta::DuneBoundaryProjection<dim>,
Dune::Alberta::DuneGlobalBoundaryProjectionFactory<dim>
>::Projection::Projection&) [with int dim = 1]':
/home/dnikolae/DUNE/dune-grid-2.0/dune/grid/albertagrid/albertagrid.cc:104:
instantiated from 'Dune::AlbertaGrid<dim, dimworld>::AlbertaGrid(const
Dune::Alberta::MacroData<Dune::AlbertaGrid<dim, dimworld>::dimension>&,
const std::string&, const
Dune::DuneBoundaryProjection<Dune::AlbertaGrid<dim,
dimworld>::dimensionworld>*) [with int dim = 1, int dimworld = 1]'
counterflow_dune.cc:124: instantiated from here
/home/dnikolae/DUNE/dune-grid-2.0/dune/grid/albertagrid/projection.hh:188:
error: no matching function for call to
'Dune::Alberta::DuneBoundaryProjection<1>::DuneBoundaryProjection(const
Dune::DuneBoundaryProjection<1>&)'
/home/dnikolae/DUNE/dune-grid-2.0/dune/grid/albertagrid/projection.hh:62: note:
candidates are:
Dune::Alberta::DuneBoundaryProjection<dim>::DuneBoundaryProjection(const
std::shared_ptr<const Dune::DuneBoundaryProjection<1> >&) [with int dim = 1]
/home/dnikolae/DUNE/dune-grid-2.0/dune/grid/albertagrid/projection.hh:50: note:
Dune::Alberta::DuneBoundaryProjection<1>::DuneBoundaryProjection(const
Dune::Alberta::DuneBoundaryProjection<1>&)
_The main point of the question is:_ although g++ is invoked with
(-DALBERTA_DIM=1 -DENABLE_ALBERTA) (it's done automatically by
dunecontrol --opts=example.opts), I get an error that there's no
function with a parameter Dune::DuneBoundaryProjection<1>; instead, a
parameter Dune::Alberta::DuneBoundaryProjection<1> is expected in the
AlbertaGrid constructor. The thing is that this parameter is passed to
the constructor of AlbertaGrid by default=0, I just use
Dune::AlbertaGrid<1,1> grid(macrodata) with a MacroData parameter.
So, I hope that this info is enough for developers to understand what I
am doing wrong. Can anybody explain?
Thank you in advance,
--
M.Sc. Dmitry Nikolaenko
Karl-Franzens-Universität
Institut für Mathematik und Wissenschaftliches Rechnen
Heinrichstraße 22, 8010 Graz, Austria
Tel: +43 316 380 5731
Fax: +43 316 380 9795
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.dune-project.org/pipermail/dune/attachments/20101126/53d425af/attachment.htm>
More information about the Dune
mailing list