Merge branch 'master' of /home/dm4/OpenFOAM/OpenFOAM-dev

This commit is contained in:
mattijs
2012-05-01 17:29:14 +01:00
26 changed files with 121 additions and 55 deletions

View File

@ -913,8 +913,8 @@ int main(int argc, char *argv[])
// Info<< "span " << span << endl; // Info<< "span " << span << endl;
pointField start = searchSurf.faceCentres() - span*normals; pointField start(searchSurf.faceCentres() - span*normals);
pointField end = searchSurf.faceCentres() + span*normals; pointField end(searchSurf.faceCentres() + span*normals);
const pointField& faceCentres = searchSurf.faceCentres(); const pointField& faceCentres = searchSurf.faceCentres();
List<List<pointIndexHit> > allHitInfo; List<List<pointIndexHit> > allHitInfo;

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -313,6 +313,7 @@ void Foam::ensightPartCells::writeConnectivity
if (key == "nfaced") if (key == "nfaced")
{ {
const faceList& meshFaces = mesh_.faces(); const faceList& meshFaces = mesh_.faces();
const labelUList& owner = mesh_.faceOwner();
// write the number of faces per element // write the number of faces per element
forAll(idList, i) forAll(idList, i)
@ -345,16 +346,33 @@ void Foam::ensightPartCells::writeConnectivity
const label id = idList[i] + offset_; const label id = idList[i] + offset_;
const labelUList& cFace = mesh_.cells()[id]; const labelUList& cFace = mesh_.cells()[id];
forAll(cFace, faceI) forAll(cFace, cFaceI)
{ {
const face& cf = meshFaces[cFace[faceI]]; const label faceId = cFace[cFaceI];
const face& cf = meshFaces[faceId];
forAll(cf, ptI) // convert global -> local index
// (note: Ensight indices start with 1)
// ensight >= 9 needs consistently oriented nfaced cells
if (id == owner[faceId])
{ {
// convert global -> local index forAll(cf, ptI)
// (note: Ensight indices start with 1) {
os.write(pointMap[cf[ptI]] + 1); os.write(pointMap[cf[ptI]] + 1);
}
} }
else
{
// as per face::reverseFace(), but without copying
os.write(pointMap[cf[0]] + 1);
for (label ptI = cf.size()-1; ptI > 0; --ptI)
{
os.write(pointMap[cf[ptI]] + 1);
}
}
os.newline(); os.newline();
} }
} }

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -48,7 +48,7 @@ Foam::scalar Foam::seriesProfile::evaluate
forAll(values, i) forAll(values, i)
{ {
result += values[i]*cos((i+1)*xIn); result += values[i]*sin((i + 1)*xIn);
} }
return result; return result;

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -28,8 +28,8 @@ Description
Series-up based profile data - drag and lift coefficients computed as Series-up based profile data - drag and lift coefficients computed as
sum of cosine series sum of cosine series
Cd = sum_i(CdCoeff)*cos(i*AOA) Cd = sum_i(CdCoeff)*sin(i*AOA)
Cl = sum_i(ClCoeff)*cos(i*AOA) Cl = sum_i(ClCoeff)*sin(i*AOA)
where: where:
AOA = angle of attack [deg] converted to [rad] internally AOA = angle of attack [deg] converted to [rad] internally

View File

@ -70,8 +70,7 @@ void Foam::KinematicCloud<CloudType>::setModels()
SurfaceFilmModel<KinematicCloud<CloudType> >::New SurfaceFilmModel<KinematicCloud<CloudType> >::New
( (
subModelProperties_, subModelProperties_,
*this, *this
g_
).ptr() ).ptr()
); );

View File

@ -241,7 +241,7 @@ inline Foam::scalar Foam::KinematicCloud<CloudType>::massInSystem() const
forAllConstIter(typename KinematicCloud<CloudType>, *this, iter) forAllConstIter(typename KinematicCloud<CloudType>, *this, iter)
{ {
const parcelType& p = iter(); const parcelType& p = iter();
sysMass += p.mass()*p.nParticle(); sysMass += p.nParticle()*p.mass();
} }
return sysMass; return sysMass;
@ -258,7 +258,7 @@ Foam::KinematicCloud<CloudType>::linearMomentumOfSystem() const
{ {
const parcelType& p = iter(); const parcelType& p = iter();
linearMomentum += p.mass()*p.U(); linearMomentum += p.nParticle()*p.mass()*p.U();
} }
return linearMomentum; return linearMomentum;
@ -275,7 +275,7 @@ Foam::KinematicCloud<CloudType>::linearKineticEnergyOfSystem() const
{ {
const parcelType& p = iter(); const parcelType& p = iter();
linearKineticEnergy += 0.5*p.mass()*(p.U() & p.U()); linearKineticEnergy += p.nParticle()*0.5*p.mass()*(p.U() & p.U());
} }
return linearKineticEnergy; return linearKineticEnergy;
@ -293,7 +293,7 @@ Foam::KinematicCloud<CloudType>::rotationalKineticEnergyOfSystem() const
const parcelType& p = iter(); const parcelType& p = iter();
rotationalKineticEnergy += rotationalKineticEnergy +=
0.5*p.momentOfInertia()*(p.omega() & p.omega()); p.nParticle()*0.5*p.momentOfInertia()*(p.omega() & p.omega());
} }
return rotationalKineticEnergy; return rotationalKineticEnergy;

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -62,7 +62,7 @@ class CellZoneInjection
// Private data // Private data
//- Name of cell zone //- Name of cell zone
const word& cellZoneName_; const word cellZoneName_;
//- Number density //- Number density
const scalar numberDensity_; const scalar numberDensity_;

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -32,8 +32,7 @@ template<class CloudType>
Foam::NoSurfaceFilm<CloudType>::NoSurfaceFilm Foam::NoSurfaceFilm<CloudType>::NoSurfaceFilm
( (
const dictionary&, const dictionary&,
CloudType& owner, CloudType& owner
const dimensionedVector&
) )
: :
SurfaceFilmModel<CloudType>(owner) SurfaceFilmModel<CloudType>(owner)

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -68,7 +68,7 @@ public:
// Constructors // Constructors
//- Construct from dictionary //- Construct from dictionary
NoSurfaceFilm(const dictionary&, CloudType&, const dimensionedVector&); NoSurfaceFilm(const dictionary&, CloudType&);
//- Construct copy //- Construct copy
NoSurfaceFilm(const NoSurfaceFilm<CloudType>& dm); NoSurfaceFilm(const NoSurfaceFilm<CloudType>& dm);

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -36,7 +36,7 @@ template<class CloudType>
Foam::SurfaceFilmModel<CloudType>::SurfaceFilmModel(CloudType& owner) Foam::SurfaceFilmModel<CloudType>::SurfaceFilmModel(CloudType& owner)
: :
SubModelBase<CloudType>(owner), SubModelBase<CloudType>(owner),
g_(dimensionedVector("zero", dimAcceleration, vector::zero)), g_(owner.g()),
ejectedParcelType_(0), ejectedParcelType_(0),
massParcelPatch_(0), massParcelPatch_(0),
diameterParcelPatch_(0), diameterParcelPatch_(0),
@ -53,12 +53,11 @@ Foam::SurfaceFilmModel<CloudType>::SurfaceFilmModel
( (
const dictionary& dict, const dictionary& dict,
CloudType& owner, CloudType& owner,
const dimensionedVector& g,
const word& type const word& type
) )
: :
SubModelBase<CloudType>(owner, dict, typeName, type), SubModelBase<CloudType>(owner, dict, typeName, type),
g_(g), g_(owner.g()),
ejectedParcelType_ ejectedParcelType_
( (
this->coeffDict().lookupOrDefault("ejectedParcelType", -1) this->coeffDict().lookupOrDefault("ejectedParcelType", -1)

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -140,10 +140,9 @@ public:
dictionary, dictionary,
( (
const dictionary& dict, const dictionary& dict,
CloudType& owner, CloudType& owner
const dimensionedVector& g
), ),
(dict, owner, g) (dict, owner)
); );
@ -157,7 +156,6 @@ public:
( (
const dictionary& dict, const dictionary& dict,
CloudType& owner, CloudType& owner,
const dimensionedVector& g,
const word& type const word& type
); );
@ -182,8 +180,7 @@ public:
static autoPtr<SurfaceFilmModel<CloudType> > New static autoPtr<SurfaceFilmModel<CloudType> > New
( (
const dictionary& dict, const dictionary& dict,
CloudType& owner, CloudType& owner
const dimensionedVector& g
); );

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -32,8 +32,7 @@ Foam::autoPtr<Foam::SurfaceFilmModel<CloudType> >
Foam::SurfaceFilmModel<CloudType>::New Foam::SurfaceFilmModel<CloudType>::New
( (
const dictionary& dict, const dictionary& dict,
CloudType& owner, CloudType& owner
const dimensionedVector& g
) )
{ {
const word modelType(dict.lookup("surfaceFilmModel")); const word modelType(dict.lookup("surfaceFilmModel"));
@ -59,7 +58,7 @@ Foam::SurfaceFilmModel<CloudType>::New
<< exit(FatalError); << exit(FatalError);
} }
return autoPtr<SurfaceFilmModel<CloudType> >(cstrIter()(dict, owner, g)); return autoPtr<SurfaceFilmModel<CloudType> >(cstrIter()(dict, owner));
} }

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -487,11 +487,10 @@ template<class CloudType>
Foam::ThermoSurfaceFilm<CloudType>::ThermoSurfaceFilm Foam::ThermoSurfaceFilm<CloudType>::ThermoSurfaceFilm
( (
const dictionary& dict, const dictionary& dict,
CloudType& owner, CloudType& owner
const dimensionedVector& g
) )
: :
SurfaceFilmModel<CloudType>(dict, owner, g, typeName), SurfaceFilmModel<CloudType>(dict, owner, typeName),
rndGen_(owner.rndGen()), rndGen_(owner.rndGen()),
thermo_ thermo_
( (

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -248,12 +248,7 @@ public:
// Constructors // Constructors
//- Construct from components //- Construct from components
ThermoSurfaceFilm ThermoSurfaceFilm(const dictionary& dict, CloudType& owner);
(
const dictionary& dict,
CloudType& owner,
const dimensionedVector& g
);
//- Construct copy //- Construct copy
ThermoSurfaceFilm(const ThermoSurfaceFilm<CloudType>& sfm); ThermoSurfaceFilm(const ThermoSurfaceFilm<CloudType>& sfm);

View File

@ -1,2 +1,2 @@
c++DBUG = c++DBUG =
c++OPT = -O2 c++OPT = -O3

View File

@ -1,2 +1,2 @@
cDBUG = cDBUG =
cOPT = -O2 cOPT = -O3

16
wmake/rules/linuxGcc47/c Normal file
View File

@ -0,0 +1,16 @@
.SUFFIXES: .c .h
cWARN = -Wall
cc = gcc -m32
include $(RULES)/c$(WM_COMPILE_OPTION)
cFLAGS = $(GFLAGS) $(cWARN) $(cOPT) $(cDBUG) $(LIB_HEADER_DIRS) -fPIC
ctoo = $(WM_SCHEDULER) $(cc) $(cFLAGS) -c $$SOURCE -o $@
LINK_LIBS = $(cDBUG)
LINKLIBSO = $(cc) -shared
LINKEXE = $(cc) -Xlinker --add-needed -Xlinker -z -Xlinker nodefs

View File

@ -0,0 +1,21 @@
.SUFFIXES: .C .cxx .cc .cpp
c++WARN = -Wall -Wextra -Wno-unused-parameter -Wold-style-cast
CC = g++ -m32
include $(RULES)/c++$(WM_COMPILE_OPTION)
ptFLAGS = -DNoRepository -ftemplate-depth-100
c++FLAGS = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
Ctoo = $(WM_SCHEDULER) $(CC) $(c++FLAGS) -c $$SOURCE -o $@
cxxtoo = $(Ctoo)
cctoo = $(Ctoo)
cpptoo = $(Ctoo)
LINK_LIBS = $(c++DBUG)
LINKLIBSO = $(CC) $(c++FLAGS) -shared -Xlinker --add-needed -Xlinker --no-as-needed
LINKEXE = $(CC) $(c++FLAGS) -Xlinker --add-needed -Xlinker --no-as-needed

View File

@ -0,0 +1,2 @@
c++DBUG = -ggdb3 -DFULLDEBUG
c++OPT = -O0 -fdefault-inline

View File

@ -0,0 +1,2 @@
c++DBUG =
c++OPT = -O3

View File

@ -0,0 +1,2 @@
c++DBUG = -pg
c++OPT = -O2

View File

@ -0,0 +1,2 @@
cDBUG = -ggdb -DFULLDEBUG
cOPT = -O1 -fdefault-inline -finline-functions

View File

@ -0,0 +1,2 @@
cDBUG =
cOPT = -O3

View File

@ -0,0 +1,2 @@
cDBUG = -pg
cOPT = -O2

View File

@ -0,0 +1,9 @@
CPP = cpp -traditional-cpp
LD = ld -melf_i386
PROJECT_LIBS = -l$(WM_PROJECT) -ldl
include $(GENERAL_RULES)/standard
include $(RULES)/c
include $(RULES)/c++

View File

@ -0,0 +1,3 @@
PFLAGS =
PINC = -I$(MPI_ARCH_PATH)/include -D_MPICC_H
PLIBS = -L$(MPI_ARCH_PATH)/lib/linux_ia32 -lmpi