Minimum changes to compile everything with gcc-4.3.0

This commit is contained in:
henry 2008-05-26 13:47:04 +01:00
parent 4a2a23a710
commit f6107f4033
24 changed files with 964 additions and 0 deletions

110
bin/foamPackChanged Executable file
View File

@ -0,0 +1,110 @@
#!/bin/sh
#------------------------------------------------------------------------------
# ========= |
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
# \\ / O peration |
# \\ / A nd | Copyright (C) 1991-2007 OpenCFD Ltd.
# \\/ M anipulation |
#-------------------------------------------------------------------------------
# License
# This file is part of OpenFOAM.
#
# OpenFOAM is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; either version 2 of the License, or (at your
# option) any later version.
#
# OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenFOAM; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
# Script
# foamPackChanged <directory> <tarFile>
#
# Description
# Packs and compresses files that have a corresponding .orig file
#
#------------------------------------------------------------------------------
tmpFile=${TMPDIR:-/tmp}/foamPackChanged.$$
if [ $# -ne 2 ]; then
echo "Usage : ${0##*/} directory tarFile"
echo ""
echo "Packs and compresses files that have a corresponding .orig file"
echo ""
exit 1
fi
# canonical form (no double and no trailing dashes)
packDir=$(echo "$1" | sed -e 's@//*@/@g' -e 's@/$@@')
packFile=$2
if [ ! -d $packDir ]; then
echo "Error: directory $packDir does not exist"
exit 1
fi
# Clean up on termination and on Ctrl-C
trap 'rm -f $tmpFile 2>/dev/null; exit 0' EXIT TERM INT
fileCount=0
cat /dev/null > $tmpFile
find -H $packDir \
! -type d \
-type f \
-name "*.orig" \
| sed \
-e "\@$packDir/lib/@d" \
-e "\@$packDir/src/other/mico-*/platforms@d" \
-e "\@$packDir/src/other/mpich-*/platforms@d" \
-e "\@$packDir/src/other/mpich-*/lib@d" \
-e "\@$packDir/src/other/lam-*/platforms@d" \
-e "\@$packDir/src/other/openmpi-*/platforms@d" \
-e '\@applications/bin/@d' \
-e '\@/t/@d' \
-e '\@Make[.A-Za-z]*/[^/]*/@d' \
-e '\@[Dd]oxygen/html@d' \
-e '\@[Dd]oxygen/latex@d' \
-e '\@[Dd]oxygen/man@d' \
-e "s@$packDir/*@@" \
| \
(
while read file
do
(( fileCount=$fileCount + 1 ))
file=${file%%.orig}
if [ -f "$packDir/$file" ]
then
echo $fileCount $file
echo $packDir/$file >> $tmpFile
else
echo "[MISSING]" $file
fi
done
)
# file fileCount
fileCount=$(cat $tmpFile | wc -l)
echo "----------------------------------------------------------------------"
echo "pack $fileCount updated (non-.orig) files"
tar -czpf $packFile --files-from $tmpFile
if [ $? = 0 ]
then
echo "Finished packing changed files from $packDir into $packFile"
else
echo "Error: failure packing changed files from $packDir into $packFile"
rm -f $packFile 2>/dev/null
fi
echo "----------------------------------------------------------------------"
# ----------------------------------------------------------------------------

12
bin/paraFoam.pvs Normal file
View File

@ -0,0 +1,12 @@
# ParaView State Version 2.2
set kw(vtkTemp2) [$Application GetMainWindow]
set kw(vtkTemp29) [$kw(vtkTemp2) GetMainView]
set kw(vtkTemp980) [$kw(vtkTemp2) GetAnimationManager]
[$kw(vtkTemp2) GetRotateCameraButton] SetState 1
$kw(vtkTemp2) ChangeInteractorStyle 1
set kw(vtkTemp840) [$kw(vtkTemp2) InitializeReadCustom "FoamReader" "%CASE%"]
$kw(vtkTemp2) ReadFileInformation $kw(vtkTemp840) "%CASE%"
$kw(vtkTemp2) FinalizeRead $kw(vtkTemp840) "%CASE%"
set kw(vtkTemp868) [$kw(vtkTemp840) GetPVWidget {Filename}]
$kw(vtkTemp868) SetValue "%CASE%"

2
bin/tools/README Normal file
View File

@ -0,0 +1,2 @@
Misc. tools for building applications, etc that are useful to have
but which don't really need to be in the PATH.

193
bin/tools/buildParaView3.3 Executable file
View File

@ -0,0 +1,193 @@
#!/bin/sh
set -x
# ParaView 3.x build script
# - normally run from folder above source folder
# use the version number and the installation location specified
# in etc/apps/paraview3/{bashrc,cshrc}
: ${ParaView_VERSION:=3.3}
: ${ParaView_INST_DIR:=$WM_PROJECT_INST_DIR/paraview-$ParaView_VERSION}
#!!User:
# set to location of paraview sources and where to build paraview
# PARAVIEW_SRC_DIR=$WM_PROJECT_INST_DIR/src/other/ParaView3
PARAVIEW_SRC_DIR=/data/cfd2/work/cfdadmin/cvs/ParaView3
PARAVIEW_BUILD_DIR=$PARAVIEW_SRC_DIR/platforms
# TODO: extract the version number from the CMakeLists.txt variables:
# PARAVIEW_VERSION_MAJOR, and PARAVIEW_VERSION_MINOR
# ParaView_VERSION="3.3"
# SET(PARAVIEW_VERSION_MAJOR 3)
# SET(PARAVIEW_VERSION_MINOR 3)
#!!User:
# select desired features, include Python whenever possible
VERBOSE=OFF
INCLUDE_MPI=OFF
MPI_MAX_PROCS=32
INCLUDE_PYTHON=ON
INCLUDE_MESA=OFF
# initialisation
oldpwd=$PWD
unset OBJ_ADD
# always build shared libraries
CMAKE_VARIABLES="-DBUILD_SHARED_LIBS:BOOL=ON"
if [ "$VERBOSE" = ON ]; then
CMAKE_VARIABLES="$CMAKE_VARIABLES -DCMAKE_VERBOSE_MAKEFILE=TRUE"
fi
#****************************************************************************
# FIX: Attempt to get around seg-fault when building documentation
#CMAKE_VARIABLES="$CMAKE_VARIABLES -BUILD_DOCUMENTATION-ADVANCED:INTERNAL=0"
#****************************************************************************
# set python specific options
# NOTE - you'll need both python and python-devel packages installed
# - might need to create a symbolic link to the python library
# - anything after the '.so' gets in the way...
# - might need to run cmake -> make twice to pick up all the links...
if [ "$INCLUDE_PYTHON" = ON ]; then
PYTHON_INCLUDE_DIR=/usr/include/python2.5
PYTHON_LIBRARY=/usr/lib$WM_COMPILER_LIB_ARCH/libpython2.5.so
if [ -d "$PYTHON_INCLUDE_DIR" ]; then
OBJ_ADD="$OBJ_ADD-py"
CMAKE_VARIABLES="$CMAKE_VARIABLES -DPARAVIEW_ENABLE_PYTHON=ON"
CMAKE_VARIABLES="$CMAKE_VARIABLES -DPYTHON_INCLUDE_PATH=$PYTHON_INCLUDE_DIR"
CMAKE_VARIABLES="$CMAKE_VARIABLES -DPYTHON_LIBRARY=$PYTHON_LIBRARY"
else
echo "non-existent PYTHON_INCLUDE_DIR: $PYTHON_INCLUDE_DIR"
fi
fi
# set MPI specific options
if [ "$INCLUDE_MPI" = ON ]; then
case "$WM_MPLIB" in
OPENMPI)
MPI_INCLUDE_PATH=$OPENMPI_ARCH_PATH/include
MPI_LIBRARY=$OPENMPI_ARCH_PATH/lib/libmpi.so
MPI_RUN=$OPENMPI_ARCH_PATH/bin/mpirun
;;
LAM)
MPI_INCLUDE_PATH=$LAM_ARCH_PATH/include
MPI_LIBRARY=$LAM_ARCH_PATH/lib/libmpi.so
MPI_RUN=$LAM_ARCH_PATH/bin/mpirun
;;
MPICH)
MPI_INCLUDE_PATH=$MPICH_ARCH_PATH/include
MPI_LIBRARY=$MPICH_ARCH_PATH/lib/libmpich.so
MPI_RUN=$MPICH_ARCH_PATH/bin/mpirun
;;
*)
unset INCLUDE_MPI
;;
esac
if [ "$INCLUDE_MPI" ]; then
OBJ_ADD="$OBJ_ADD-mpi"
CMAKE_VARIABLES="$CMAKE_VARIABLES -DVTK_USE_MPI=ON"
CMAKE_VARIABLES="$CMAKE_VARIABLES -DPARAVIEW_USE_MPI=ON"
CMAKE_VARIABLES="$CMAKE_VARIABLES -DMPI_INCLUDE_PATH=$MPI_INCLUDE_PATH"
CMAKE_VARIABLES="$CMAKE_VARIABLES -DMPI_LIBRARY=$MPI_LIBRARY"
CMAKE_VARIABLES="$CMAKE_VARIABLES -DVTK_MPIRUN_EXE=$MPI_RUN"
CMAKE_VARIABLES="$CMAKE_VARIABLES -DVTK_MPI_MAX_NUMPROCS=$MPI_MAX_PROCS"
else
echo "unknown/unsupported mpi: $WM_MPLIB"
fi
fi
# set MESA specific options
if [ "$INCLUDE_MESA" = ON ]; then
MESA_INCLUDE_DIR=/usr/include/GL
MESA_LIBRARY=/usr/lib$WM_COMPILER_LIB_ARCH/libOSMesa.so
if [ -d "$MESA_INCLUDE_DIR" -a -f "$MESA_LIBRARY" ]; then
OBJ_ADD="$OBJ_ADD-mesa"
CMAKE_VARIABLES="$CMAKE_VARIABLES -DVTK_OPENGL_HAS_OSMESA=ON"
CMAKE_VARIABLES="$CMAKE_VARIABLES -DOSMESA_INCLUDE_DIR=$MESA_INCLUDE_DIR"
CMAKE_VARIABLES="$CMAKE_VARIABLES -DOSMESA_LIBRARY=$MESA_LIBRARY"
else
echo "no MESA information found ... skipping"
fi
fi
# finalize the build/install environment
PARAVIEW_OBJ_DIR=$PARAVIEW_BUILD_DIR/$WM_OPTIONS$OBJ_ADD
PARAVIEW_APP_DIR=$ParaView_INST_DIR/platforms/$WM_OPTIONS$OBJ_ADD
# create paraview build folder
mkdir -p $PARAVIEW_OBJ_DIR
cd $PARAVIEW_OBJ_DIR
#
# make paraview
#
# provide a backdoor to skip cmake for repeated builds
if [ -z "$build_no_cmake" ]
then
cmake \
-DCMAKE_INSTALL_PREFIX=$PARAVIEW_APP_DIR \
$CMAKE_VARIABLES \
$PARAVIEW_SRC_DIR
fi
if [ -r /proc/cpuinfo ]; then
WM_NCOMPPROCS=`egrep "^processor" /proc/cpuinfo | wc -l`
[ $WM_NCOMPPROCS -le 8 ] || WM_NCOMPPROCS=8
make -j $WM_NCOMPPROCS
else
make
fi
if [ -e "$PARAVIEW_OBJ_DIR/bin/paraview" ]; then
echo "Info: Installation completed - proceeding to install"
make install
# copy VTK headers to install directory
echo "Info: Copying VTK headers"
cp -r $PARAVIEW_SRC_DIR/VTK $PARAVIEW_APP_DIR
cp -r $PARAVIEW_OBJ_DIR/VTK/vtkConfigure.h $PARAVIEW_APP_DIR/VTK
cp -r $PARAVIEW_OBJ_DIR/VTK/vtkstd $PARAVIEW_APP_DIR/VTK
# copy all .so files to the lib folder
# - NOTE: shouldn't be necessary - but some libs not copied over to the
# install folder
## echo "Info: Copying libs"
## cp $PARAVIEW_OBJ_DIR/bin/*.so* $PARAVIEW_APP_DIR/lib/paraview-$ParaView_VERSION
echo "Info: Copying ParaViewConfig.cmake"
cp $PARAVIEW_OBJ_DIR/ParaViewConfig.cmake $PARAVIEW_APP_DIR
if [ "$OBJ_ADD" ]; then
echo "Creating symbolic link in $ParaView_INST_DIR/platforms from $WM_OPTIONS$OBJ_ADD to $WM_OPTIONS"
( cd $ParaView_INST_DIR/platforms && ln -s $WM_OPTIONS$OBJ_ADD $WM_OPTIONS )
fi
echo "Installation complete"
echo "Set environment variables:"
echo " - ParaView_DIR to $PARAVIEW_APP_DIR"
echo " - ParaView_INST_DIR to $PARAVIEW_APP_DIR"
echo " - PV_PLUGIN_PATH to $FOAM_LIBBIN"
echo "Add $ParaView_INST_DIR/bin to PATH"
echo "Add $ParaView_INST_DIR/lib to LD_LIBRARY_PATH"
echo "done."
else
echo "*** Error: Installation failed - see output window"
fi
# finalisation
cd $oldpwd
# ----------------------------------------------------------------- end-of-file

View File

@ -0,0 +1,402 @@
/*---------------------------------------------------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 1991-2007 OpenCFD Ltd.
\\/ M anipulation |
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation,
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
\*---------------------------------------------------------------------------*/
#include "timeSeries.H"
#include "Istream.H"
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
template<typename T>
Foam::timeSeries<T>::timeSeries(const bounds bound)
:
List<Tuple2<scalar, T> >(),
bounding_(bound)
{}
template<typename T>
Foam::timeSeries<T>::timeSeries(const word& bound)
:
List<Tuple2<scalar, T> >(),
bounding_(timeSeries::WARN)
{
bounding(bound);
}
template<typename T>
Foam::timeSeries<T>::timeSeries(Istream& is, const bounds bound)
:
List<Tuple2<scalar, T> >(is),
bounding_(bound)
{}
template<typename T>
Foam::timeSeries<T>::timeSeries(Istream& is, const word& bound)
:
List<Tuple2<scalar, T> >(is),
bounding_(timeSeries::WARN)
{
bounding(bound);
}
// * * * * * * * * * * * * * * * * Selectors * * * * * * * * * * * * * * * * //
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
template<typename T>
Foam::timeSeries<T>::~timeSeries()
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<typename T>
Foam::word Foam::timeSeries<T>::bounding() const
{
word enumName("warn");
switch (bounding_)
{
case timeSeries::ERROR:
enumName = "error";
break;
case timeSeries::WARN:
enumName = "warn";
break;
case timeSeries::CLAMP:
enumName = "clamp";
break;
case timeSeries::REPEAT:
enumName = "repeat";
break;
}
return enumName;
}
template<typename T>
void Foam::timeSeries<T>::bounding(const word& bound)
{
if (bound == "error")
{
bounding_ = timeSeries::ERROR;
}
else if (bound == "warn")
{
bounding_ = timeSeries::WARN;
}
else if (bound == "clamp")
{
bounding_ = timeSeries::CLAMP;
}
else if (bound == "repeat")
{
bounding_ = timeSeries::REPEAT;
}
else
{
WarningIn("Foam::timeSeries<T>::boundingEnum(const word&)")
<< "bad bounding specifier " << bound << " using 'warn'" << endl;
bounding_ = timeSeries::WARN;
}
}
template<typename T>
void Foam::timeSeries<T>::check() const
{
label n = size();
scalar prevTime = List<Tuple2<scalar, T> >::operator[](0).first();
for (label i = 1; i < n; ++i)
{
const scalar currTime = List<Tuple2<scalar, T> >::operator[](i).first();
// avoid duplicate times (divide-by-zero error)
if (currTime <= prevTime)
{
FatalErrorIn
(
"Foam::timeSeries<T>::checkOrder() const"
) << "out-of-order time: "
<< currTime << " at index " << i << nl
<< exit(FatalError);
}
prevTime = currTime;
}
}
// * * * * * * * * * * * * * * * Member Operators * * * * * * * * * * * * * //
template<typename T>
const Foam::Tuple2<Foam::scalar, T>&
Foam::timeSeries<T>::operator[](const label i) const
{
label ii = i;
label n = size();
if (n <= 1)
{
ii = 0;
}
else if (ii < 0)
{
switch (bounding_)
{
case timeSeries::ERROR:
FatalErrorIn
(
"Foam::timeSeries<T>::operator[](const label) const"
) << "index (" << ii << ") underflow" << nl
<< exit(FatalError);
break;
case timeSeries::WARN:
WarningIn
(
"Foam::timeSeries<T>::operator[](const label) const"
) << "index (" << ii << ") underflow" << nl
<< " Continuing with the first entry"
<< endl;
// fall-through to 'CLAMP'
case timeSeries::CLAMP:
ii = 0;
break;
case timeSeries::REPEAT:
while (ii < 0)
{
ii += n;
}
break;
}
}
else if (ii >= n)
{
switch (bounding_)
{
case timeSeries::ERROR:
FatalErrorIn
(
"Foam::timeSeries<T>::operator[](const label) const"
) << "index (" << ii << ") overflow" << nl
<< exit(FatalError);
break;
case timeSeries::WARN:
WarningIn
(
"Foam::timeSeries<T>::operator[](const label) const"
) << "index (" << ii << ") overflow" << nl
<< " Continuing with the last entry"
<< endl;
// fall-through to 'CLAMP'
case timeSeries::CLAMP:
ii = n - 1;
break;
case timeSeries::REPEAT:
while (ii >= n)
{
ii -= n;
}
break;
}
}
return List<Tuple2<scalar, T> >::operator[](ii);
}
template<typename T>
T Foam::timeSeries<T>::operator()(const scalar timeValue) const
{
label n = size();
if (n <= 1)
{
return List<Tuple2<scalar, T> >::operator[](0).second();
}
scalar minTime = List<Tuple2<scalar, T> >::operator[](0).first();
scalar maxTime = List<Tuple2<scalar, T> >::operator[](n-1).first();
scalar lookupTime = timeValue;
if (lookupTime < minTime)
{
switch (bounding_)
{
case timeSeries::ERROR:
FatalErrorIn
(
"Foam::timeSeries<T>::operator[](const scalar) const"
) << "time (" << lookupTime << ") underflow" << nl
<< exit(FatalError);
break;
case timeSeries::WARN:
WarningIn
(
"Foam::timeSeries<T>::operator[](const scalar) const"
) << "time (" << lookupTime << ") underflow" << nl
<< " Continuing with the first entry"
<< endl;
// fall-through to 'CLAMP'
case timeSeries::CLAMP:
return List<Tuple2<scalar, T> >::operator[](0).second();
break;
case timeSeries::REPEAT:
// adjust lookupTime to >= 0
while (lookupTime < 0)
{
lookupTime += maxTime;
}
break;
}
}
else if (lookupTime >= maxTime)
{
switch (bounding_)
{
case timeSeries::ERROR:
FatalErrorIn
(
"Foam::timeSeries<T>::operator[](const label) const"
) << "time (" << lookupTime << ") overflow" << nl
<< exit(FatalError);
break;
case timeSeries::WARN:
WarningIn
(
"Foam::timeSeries<T>::operator[](const label) const"
) << "time (" << lookupTime << ") overflow" << nl
<< " Continuing with the last entry"
<< endl;
// fall-through to 'CLAMP'
case timeSeries::CLAMP:
return List<Tuple2<scalar, T> >::operator[](n-1).second();
break;
case timeSeries::REPEAT:
// adjust lookupTime <= maxTime
while (lookupTime > maxTime)
{
lookupTime -= maxTime;
}
break;
}
}
label lo = 0;
label hi = 0;
// look for the correct range
for (label i = 0; i < n; ++i)
{
if (lookupTime >= List<Tuple2<scalar, T> >::operator[](i).first())
{
lo = hi = i;
}
else
{
hi = i;
break;
}
}
if (lo == hi)
{
// we are at the end of the table - or there is only a single entry
return List<Tuple2<scalar, T> >::operator[](hi).second();
}
else if (hi == 0)
{
// this treatment should should only occur under these condition:
// -> the 'REPEAT' treatment
// -> (0 <= time <= minTime)
// -> minTime > 0
// Use the value at maxTime as the value for time=0
lo = n - 1;
return
(
List<Tuple2<scalar, T> >::operator[](lo).second()
+
(
List<Tuple2<scalar, T> >::operator[](hi).second()
- List<Tuple2<scalar, T> >::operator[](lo).second()
)
* (lookupTime / minTime)
);
}
else
{
// normal interpolation
return
(
List<Tuple2<scalar, T> >::operator[](lo).second()
+
(
List<Tuple2<scalar, T> >::operator[](hi).second()
- List<Tuple2<scalar, T> >::operator[](lo).second()
)
*
(
lookupTime
- List<Tuple2<scalar, T> >::operator[](lo).first()
)
/
(
List<Tuple2<scalar, T> >::operator[](hi).first()
- List<Tuple2<scalar, T> >::operator[](lo).first()
)
);
}
}
// ************************************************************************* //

View File

@ -0,0 +1,162 @@
/*---------------------------------------------------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 1991-2007 OpenCFD Ltd.
\\/ M anipulation |
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
OpenFOAM is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with OpenFOAM; if not, write to the Free Software Foundation,
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Class
Foam::timeSeries
Description
A list of times and values.
The time values must be positive and monotonically increasing.
The treatment of out-of-bounds values depends on the current setting
of bounding.
If @a REPEAT bounding is in effect, the final time value is treated
as being equivalent to time=0 for the following periods.
Note
- Accessing an empty list will result in an error.
- Accessing a list with a single element will always return the same value.
SourceFiles
timeSeries.C
\*---------------------------------------------------------------------------*/
#ifndef timeSeries_H
#define timeSeries_H
#include "List.H"
#include "Tuple2.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
/*---------------------------------------------------------------------------*\
Class timeSeries Declaration
\*---------------------------------------------------------------------------*/
template<class T>
class timeSeries
:
public List<Tuple2<scalar, T> >
{
public:
// Public data types
//- Enumeration for handling out-of-bound times
enum bounds
{
ERROR, /*!< Exit with a FatalError */
WARN, /*!< Issue warning and clamp value (default) */
CLAMP, /*!< Clamp value to the start/end value */
REPEAT /*!< Treat as a repeating list */
};
private:
// Private data
//- Enumeration for handling out-of-bound times
bounds bounding_;
public:
// Constructors
//- Construct null, optionally with a given bounding
timeSeries(const bounds = timeSeries::WARN);
//- Construct null with a given bounding
timeSeries(const word&);
//- Construct from Istream, optionally with a given bounding
timeSeries(Istream&, const bounds = timeSeries::WARN);
//- Construct from Istream with a given bounding
timeSeries(Istream&, const word&);
// Destructor
~timeSeries();
// Member Functions
// Access
//- Return the size
label size() const
{
return List<Tuple2<scalar, T> >::size();
}
//- Return the out-of-bounds treatment as a word
word bounding() const;
// Check
//- Check that list is monotonically increasing
// Exit with a FatalError if there is a problem
void check() const;
// Edit
//- Set the out-of-bounds treatment from enum, return previous setting
bounds bounding(const bounds& bound)
{
bounds prev = bounding_;
bounding_ = bound;
return prev;
}
//- Set the out-of-bounds treatment from word
void bounding(const word& bound);
// Member Operators
//- Return an element of constant Tuple2<scalar, T>
const Tuple2<scalar, T>& operator[](const label) const;
//- Return an interpolated value
T operator()(const scalar) const;
};
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#ifdef NoRepository
# include "timeSeries.C"
#endif
#endif
// ************************************************************************* //

View File

@ -0,0 +1,3 @@
XFLAGS =
XINC = $(XFLAGS) -I/usr/X11R6/include
XLIBS = -L/usr/X11R6/lib64 -lXext -lX11

View File

@ -0,0 +1,16 @@
.SUFFIXES: .c .h
cWARN = -Wall
cc = gcc -m64
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 -z -Xlinker nodefs

View File

@ -0,0 +1,21 @@
.SUFFIXES: .C .cxx .cc .cpp
c++WARN = -Wall -Wno-strict-aliasing -Wextra -Wno-unused-parameter -Wold-style-cast
CC = g++ -m64
include $(RULES)/c++$(WM_COMPILE_OPTION)
ptFLAGS = -DNoRepository -ftemplate-depth-40
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
LINKEXE = $(CC) $(c++FLAGS)

View File

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

View File

@ -0,0 +1,4 @@
c++DBUG =
c++OPT = -march=opteron -O3
#c++OPT = -march=nocona -O3
# -ftree-vectorize -ftree-vectorizer-verbose=3

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 = -march=opteron -O3 -fno-gcse

View File

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

Binary file not shown.

View File

@ -0,0 +1,11 @@
CPP = /lib/cpp $(GFLAGS)
LD = ld -A64
PROJECT_LIBS = -l$(WM_PROJECT) -liberty -ldl
include $(GENERAL_RULES)/standard
include $(RULES)/X
include $(RULES)/c
include $(RULES)/c++
include $(GENERAL_RULES)/cint

View File

@ -0,0 +1,3 @@
PFLAGS =
PINC =
PLIBS =

View File

@ -0,0 +1,3 @@
PFLAGS =
PINC = -I$(GAMMA_ARCH_PATH)/include
PLIBS = -L$(GAMMA_ARCH_PATH)/lib -lgamma

View File

@ -0,0 +1,3 @@
PFLAGS =
PINC = -I$(LAM_ARCH_PATH)/include
PLIBS = -L$(LAM_ARCH_PATH)/lib -lmpi -llam -lpthread -lutil

View File

@ -0,0 +1,3 @@
PFLAGS =
PINC = -I$(MPICH_ARCH_PATH)/include
PLIBS = -L$(MPICH_ARCH_PATH)/lib -lmpich -lrt

View File

@ -0,0 +1,3 @@
PFLAGS =
PINC = -I$(MPICH_ARCH_PATH)/include
PLIBS = -L$(MPICH_ARCH_PATH)/lib -lmpich -L$(GM_LIB_PATH) -lgm

View File

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

BIN
wmake/rules/linux64Gcc43/wmkdep Executable file

Binary file not shown.