[Dune] Re: [Dune-CVS] dune-grid r3732 - in releases/1.0/grid/io/visual: . grape
Oliver Sander
sander at mi.fu-berlin.de
Wed Jun 20 11:07:26 CEST 2007
Hi Robert!
Do I understand correctly that DiscreteFunctionSpace is in
dune-fem and that we thus have a dependency of dune-grid
on dune-fem?
greetings,
Oliver
robertk at dune-project.org wrote:
>Author: robertk
>Date: 2007-06-20 11:03:50 +0200 (Wed, 20 Jun 2007)
>New Revision: 3732
>
>Modified:
> releases/1.0/grid/io/visual/grape/grapedatadisplay.cc
> releases/1.0/grid/io/visual/grapedatadisplay.hh
>Log:
>consequently use DiscreteFunctionSpace, as we visualize discrete
>functions.
>
>Also remove none workung maximum calculation for vectorial data.
>
>
>
>Modified: releases/1.0/grid/io/visual/grape/grapedatadisplay.cc
>===================================================================
>--- releases/1.0/grid/io/visual/grape/grapedatadisplay.cc 2007-06-15 12:15:47 UTC (rev 3731)
>+++ releases/1.0/grid/io/visual/grape/grapedatadisplay.cc 2007-06-20 09:03:50 UTC (rev 3732)
>@@ -53,7 +53,7 @@
> DiscreteFunctionType & func, LocalFunctionType &lf,
> const int * comp, int localNum, double * val)
> {
>- enum { polynomialOrder = FunctionSpaceType :: polynomialOrder };
>+ enum { polynomialOrder = DiscreteFunctionSpaceType :: polynomialOrder };
> static const GrapeLagrangePoints<ctype,dim,dimworld,polynomialOrder> lagrangePoints;
> const FieldVector<ctype,dim> & localPoint =
> lagrangePoints.getPoint(geomType,polynomialOrder,localNum);
>@@ -83,7 +83,7 @@
> // corners , kind of hack, but works for the moment
> if(polOrd == 0)
> {
>- enum { polynomialOrder = FunctionSpaceType :: polynomialOrder };
>+ enum { polynomialOrder = SpaceType :: polynomialOrder };
> static const GrapeLagrangePoints<ctype,dim,dimworld,polynomialOrder> lagrangePoints;
> const FieldVector<ctype,dim> & localPoint =
> lagrangePoints.getPoint(geomType,polynomialOrder,localNum);
>@@ -223,33 +223,9 @@
> }
> else
> {
>- typedef typename DiscreteFunctionType:: ConstDofIteratorType DofIteratorType;
>- int comp = df->comp[0];
>- int dimVal = df->dimVal;
>-
>- DofIteratorType enddit = func.dend();
>- {
>- DofIteratorType dit = func.dbegin();
>- int count = 0;
>- while ( (dit != enddit) )
>- {
>- if((count%dimVal) == comp )
>- {
>- minValue = (*dit);
>- maxValue = (*dit);
>- break;
>- }
>- ++count;
>- }
>- }
>-
>- int count = 0;
>- for(DofIteratorType dit = func.dbegin(); dit != enddit; ++dit, ++count)
>- {
>- if((count%dimVal) != comp) continue;
>- if( (*dit) < minValue) minValue = (*dit);
>- if( (*dit) > maxValue) maxValue = (*dit);
>- }
>+ derr << "EvalDiscreteFunctions::calcMinMax: method not implemented for vectorial data! \n";
>+ minValue = 0.0;
>+ maxValue = 1.0;
> }
>
> if((maxValue-minValue) < 1e-10)
>@@ -497,8 +473,8 @@
> inline void GrapeDataDisplay<GridType>::
> addData(const DiscFuncType &func , const DATAINFO * dinf, double time )
> {
>- typedef typename DiscFuncType::FunctionSpaceType FunctionSpaceType;
>- enum { polynomialOrder = FunctionSpaceType :: polynomialOrder };
>+ typedef typename DiscFuncType::DiscreteFunctionSpaceType DiscreteFunctionSpaceType;
>+ enum { polynomialOrder = DiscreteFunctionSpaceType :: polynomialOrder };
> typedef typename DiscFuncType::LocalFunctionType LocalFuncType;
>
> assert(dinf);
>@@ -512,7 +488,7 @@
> // add function wether is exists or not
> if(!already)
> {
>- int num = (int) FunctionSpaceType::DimRange;
>+ int num = (int) DiscreteFunctionSpaceType::DimRange;
> if(vector) num = 1;
>
> vecFdata_.resize(size+num);
>@@ -568,10 +544,10 @@
> data->name = name;
>
> data->dimVal = dimVal;
>- data->dimRange = FunctionSpaceType::DimRange;
>+ data->dimRange = DiscreteFunctionSpaceType::DimRange;
>
> // set grid part selection methods
>- typedef typename FunctionSpaceType :: GridPartType GridPartType;
>+ typedef typename DiscreteFunctionSpaceType :: GridPartType GridPartType;
> data->gridPart = ((void *) &func.space().gridPart());
> data->setGridPartIterators =
> &BaseType::template SetIter<GridPartType>::setGPIterator;
>
>Modified: releases/1.0/grid/io/visual/grapedatadisplay.hh
>===================================================================
>--- releases/1.0/grid/io/visual/grapedatadisplay.hh 2007-06-15 12:15:47 UTC (rev 3731)
>+++ releases/1.0/grid/io/visual/grapedatadisplay.hh 2007-06-20 09:03:50 UTC (rev 3732)
>@@ -79,10 +79,10 @@
> typedef typename GridType :: ctype ctype;
>
> typedef typename DiscreteFunctionType :: LocalFunctionType LocalFunctionType;
>- typedef typename DiscreteFunctionType :: FunctionSpaceType FunctionSpaceType;
>+ typedef typename DiscreteFunctionType :: DiscreteFunctionSpaceType DiscreteFunctionSpaceType;
>
>- typedef typename FunctionSpaceType :: RangeType RangeType;
>- typedef typename FunctionSpaceType :: DomainType DomainType;
>+ typedef typename DiscreteFunctionSpaceType :: RangeType RangeType;
>+ typedef typename DiscreteFunctionSpaceType :: DomainType DomainType;
>
> typedef typename GrapeInterface<dim,dimworld>::DUNE_ELEM DUNE_ELEM;
> typedef typename GrapeInterface<dim,dimworld>::DUNE_FDATA DUNE_FDATA;
>
>
>_______________________________________________
>Dune-CVS mailing list
>Dune-CVS at dune-project.org
>http://lists.dune-project.org/mailman/listinfo/dune-cvs
>
>
--
************************************************************************
* Oliver Sander ** email: sander at mi.fu-berlin.de *
* Freie Universität Berlin ** phone: + 49 (30) 838 75217 *
* Institut für Mathematik II ** URL : page.mi.fu-berlin.de/~sander *
* Arnimallee 6 ** -------------------------------------*
* 14195 Berlin, Germany ** Member of MATHEON (www.matheon.de) *
************************************************************************
More information about the Dune
mailing list