Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Development
openfoam
Commits
583e1b1e
Commit
583e1b1e
authored
Jan 15, 2010
by
mattijs
Browse files
Merge branch 'master' of /home/noisy3/OpenFOAM/OpenFOAM-dev
parents
8f656fff
dc507b8c
Changes
41
Hide whitespace changes
Inline
Side-by-side
applications/solvers/combustion/PDRFoam/PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.H
View file @
583e1b1e
...
...
@@ -124,11 +124,6 @@ public:
// Member Functions
tmp
<
volScalarField
>
mut
()
const
{
return
mut_
;
}
//- Return the effective diffusivity for k
tmp
<
volScalarField
>
DkEff
()
const
{
...
...
@@ -147,41 +142,44 @@ public:
);
}
//- Return the
effective turbulent thermal diffusiv
ity
tmp
<
volScalarField
>
alphaEff
()
const
//- Return the
turbulence viscos
ity
virtual
tmp
<
volScalarField
>
mut
()
const
{
return
tmp
<
volScalarField
>
(
new
volScalarField
(
"alphaEff"
,
alphat_
+
alpha
())
);
return
mut_
;
}
//- Return the turbulence thermal diffusivity
virtual
tmp
<
volScalarField
>
alphat
()
const
{
return
alphat_
;
}
//- Return the turbulence kinetic energy
tmp
<
volScalarField
>
k
()
const
virtual
tmp
<
volScalarField
>
k
()
const
{
return
k_
;
}
//- Return the turbulence kinetic energy dissipation rate
tmp
<
volScalarField
>
epsilon
()
const
virtual
tmp
<
volScalarField
>
epsilon
()
const
{
return
epsilon_
;
}
//- Return the Reynolds stress tensor
tmp
<
volSymmTensorField
>
R
()
const
;
virtual
tmp
<
volSymmTensorField
>
R
()
const
;
//- Return the effective stress tensor including the laminar stress
tmp
<
volSymmTensorField
>
devRhoReff
()
const
;
virtual
tmp
<
volSymmTensorField
>
devRhoReff
()
const
;
//- Return the source term for the momentum equation
tmp
<
fvVectorMatrix
>
divDevRhoReff
(
volVectorField
&
U
)
const
;
virtual
tmp
<
fvVectorMatrix
>
divDevRhoReff
(
volVectorField
&
U
)
const
;
//- Solve the turbulence equations and correct the turbulence viscosity
void
correct
();
virtual
void
correct
();
//- Read turbulenceProperties dictionary
bool
read
();
virtual
bool
read
();
};
...
...
etc/apps/paraview3/bashrc
View file @
583e1b1e
...
...
@@ -68,7 +68,7 @@ fi
if
[
-r
$ParaView_DIR
]
then
export
PATH
=
$ParaView_DIR
/bin:
$PATH
export
PV_PLUGIN_PATH
=
$FOAM_LIBBIN
export
PV_PLUGIN_PATH
=
$FOAM_LIBBIN
/paraview
fi
unset
cmake ParaView_PYTHON_DIR
...
...
etc/apps/paraview3/cshrc
View file @
583e1b1e
...
...
@@ -62,7 +62,7 @@ endif
if
(
-r
$ParaView_INST_DIR
)
then
set
path
=(
$ParaView_DIR
/bin
$path
)
setenv PV_PLUGIN_PATH
$FOAM_LIBBIN
setenv PV_PLUGIN_PATH
$FOAM_LIBBIN
/paraview
endif
unset
cmake paraviewMajor paraviewPython
...
...
src/lagrangian/intermediate/clouds/derived/BasicReactingMultiphaseCloud/BasicReactingMultiphaseCloud.H
View file @
583e1b1e
...
...
@@ -42,13 +42,31 @@ Description
namespace
Foam
{
typedef
ReactingMultiphaseCloud
<
BasicReactingParcel
<
constGasThermoPhysics
>
>
typedef
ReactingMultiphaseCloud
<
BasicReactingMultiphaseParcel
<
constGasThermoPhysics
>
>
constThermoReactingMultiphaseCloud
;
typedef
ReactingMultiphaseCloud
<
BasicReactingParcel
<
gasThermoPhysics
>
>
typedef
ReactingMultiphaseCloud
<
BasicReactingMultiphaseParcel
<
gasThermoPhysics
>
>
thermoReactingMultiphaseCloud
;
typedef
ReactingMultiphaseCloud
<
BasicReactingParcel
<
icoPoly8ThermoPhysics
>
>
typedef
ReactingMultiphaseCloud
<
BasicReactingMultiphaseParcel
<
icoPoly8ThermoPhysics
>
>
icoPoly8ThermoReactingMultiphaseCloud
;
}
...
...
src/lagrangian/intermediate/parcels/Templates/ReactingMultiphaseParcel/ReactingMultiphaseParcel.C
View file @
583e1b1e
...
...
@@ -401,7 +401,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::calc
td
.
cloud
().
hcTrans
()[
cellI
]
+=
np0
*
dMassGas
[
i
]
*
td
.
cloud
().
mcCarrierThermo
().
speciesData
()[
gid
].
H
(
T0
);
*
td
.
cloud
().
mcCarrierThermo
().
speciesData
()[
gid
].
H
c
();
}
forAll
(
YLiquid_
,
i
)
{
...
...
@@ -410,7 +410,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::calc
td
.
cloud
().
hcTrans
()[
cellI
]
+=
np0
*
dMassLiquid
[
i
]
*
td
.
cloud
().
mcCarrierThermo
().
speciesData
()[
gid
].
H
(
T0
);
*
td
.
cloud
().
mcCarrierThermo
().
speciesData
()[
gid
].
H
c
();
}
/*
// No mapping between solid components and carrier phase
...
...
@@ -421,7 +421,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::calc
td.cloud().hcTrans()[cellI] +=
np0
*dMassSolid[i]
*td.cloud().mcCarrierThermo().speciesData()[gid].H(
T0
);
*td.cloud().mcCarrierThermo().speciesData()[gid].H
c
();
}
*/
forAll
(
dMassSRCarrier
,
i
)
...
...
@@ -430,7 +430,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::calc
td
.
cloud
().
hcTrans
()[
cellI
]
+=
np0
*
dMassSRCarrier
[
i
]
*
td
.
cloud
().
mcCarrierThermo
().
speciesData
()[
i
].
H
(
T0
);
*
td
.
cloud
().
mcCarrierThermo
().
speciesData
()[
i
].
H
c
();
}
// Update momentum transfer
...
...
src/lagrangian/intermediate/parcels/Templates/ReactingParcel/ReactingParcel.C
View file @
583e1b1e
...
...
@@ -122,7 +122,7 @@ void Foam::ReactingParcel<ParcelType>::correctSurfaceValues
}
// Far field carrier molar fractions
scalarField
Xinf
(
Y_
.
size
());
scalarField
Xinf
(
td
.
cloud
().
mcCarrierThermo
().
speciesData
()
.
size
());
forAll
(
Xinf
,
i
)
{
...
...
src/postProcessing/functionObjects/field/fieldAverage/controlDict
View file @
583e1b1e
...
...
@@ -14,7 +14,7 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
application
oodles
;
application
XXX
;
startFrom latestTime;
...
...
@@ -54,6 +54,12 @@ functions
// Where to load it from (if not already in solver)
functionObjectLibs ("libfieldAverage.so");
// Function object enabled flag
enabled true;
// When to output the average fields
outputControl outputTime;
// Fields to be averaged - runTime modifiable
fields
(
...
...
src/postProcessing/functionObjects/field/fieldValues/cellSource/cellSource.C
View file @
583e1b1e
...
...
@@ -46,10 +46,13 @@ namespace Foam
fieldValues
::
cellSource
::
sourceTypeNames_
;
template
<>
const
char
*
NamedEnum
<
fieldValues
::
cellSource
::
operationType
,
4
>::
names
[]
=
{
"none"
,
"sum"
,
"volAverage"
,
"volIntegrate"
};
const
char
*
NamedEnum
<
fieldValues
::
cellSource
::
operationType
,
5
>::
names
[]
=
{
"none"
,
"sum"
,
"volAverage"
,
"volIntegrate"
,
"weightedAverage"
};
const
NamedEnum
<
fieldValues
::
cellSource
::
operationType
,
4
>
const
NamedEnum
<
fieldValues
::
cellSource
::
operationType
,
5
>
fieldValues
::
cellSource
::
operationTypeNames_
;
}
...
...
@@ -93,7 +96,7 @@ void Foam::fieldValues::cellSource::setCellZoneCells()
// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * //
void
Foam
::
fieldValues
::
cellSource
::
initialise
()
void
Foam
::
fieldValues
::
cellSource
::
initialise
(
const
dictionary
&
dict
)
{
switch
(
source_
)
{
...
...
@@ -104,7 +107,7 @@ void Foam::fieldValues::cellSource::initialise()
}
default:
{
FatalErrorIn
(
"cellSource::
constructCellAddressing
()"
)
FatalErrorIn
(
"cellSource::
initialise
()"
)
<<
"Unknown source type. Valid source types are:"
<<
sourceTypeNames_
<<
nl
<<
exit
(
FatalError
);
}
...
...
@@ -114,6 +117,29 @@ void Foam::fieldValues::cellSource::initialise()
<<
" total cells = "
<<
cellId_
.
size
()
<<
nl
<<
" total volume = "
<<
sum
(
filterField
(
mesh
().
V
()))
<<
nl
<<
endl
;
if
(
operation_
==
opWeightedAverage
)
{
dict
.
lookup
(
"weightField"
)
>>
weightFieldName_
;
if
(
obr
().
foundObject
<
volScalarField
>
(
weightFieldName_
)
)
{
Info
<<
" weight field = "
<<
weightFieldName_
;
}
else
{
FatalErrorIn
(
"cellSource::initialise()"
)
<<
type
()
<<
" "
<<
name_
<<
": "
<<
sourceTypeNames_
[
source_
]
<<
"("
<<
sourceName_
<<
"):"
<<
nl
<<
" Weight field "
<<
weightFieldName_
<<
" must be a "
<<
volScalarField
::
typeName
<<
nl
<<
exit
(
FatalError
);
}
}
Info
<<
nl
<<
endl
;
}
...
...
@@ -172,7 +198,7 @@ void Foam::fieldValues::cellSource::read(const dictionary& dict)
if
(
active_
)
{
// no additional info to read
initialise
();
initialise
(
dict
);
}
}
...
...
@@ -183,9 +209,12 @@ void Foam::fieldValues::cellSource::write()
if
(
active_
)
{
outputFilePtr_
()
<<
obr_
.
time
().
value
()
<<
tab
<<
sum
(
filterField
(
mesh
().
V
()));
if
(
Pstream
::
master
())
{
outputFilePtr_
()
<<
obr_
.
time
().
value
()
<<
tab
<<
sum
(
filterField
(
mesh
().
V
()));
}
forAll
(
fields_
,
i
)
{
...
...
@@ -196,7 +225,10 @@ void Foam::fieldValues::cellSource::write()
writeValues
<
tensor
>
(
fields_
[
i
]);
}
outputFilePtr_
()
<<
endl
;
if
(
Pstream
::
master
())
{
outputFilePtr_
()
<<
endl
;
}
if
(
log_
)
{
...
...
src/postProcessing/functionObjects/field/fieldValues/cellSource/cellSource.H
View file @
583e1b1e
...
...
@@ -39,7 +39,7 @@ Description
valueOutput true; // Write values at run-time output times?
source cellZone; // Type of cell source
sourceName c0;
operation volAverage;
// none, sum, volAverage, volIntegrate
operation volAverage;
fields
(
p
...
...
@@ -47,6 +47,13 @@ Description
);
}
where operation is one of:
- none
- sum
- volAverage
- volIntegrate
- weightedAverage
SourceFiles
cellSource.C
...
...
@@ -96,11 +103,12 @@ public:
opNone
,
opSum
,
opVolAverage
,
opVolIntegrate
opVolIntegrate
,
opWeightedAverage
};
//- Operation type names
static
const
NamedEnum
<
operationType
,
4
>
operationTypeNames_
;
static
const
NamedEnum
<
operationType
,
5
>
operationTypeNames_
;
private:
...
...
@@ -127,23 +135,34 @@ protected:
//- Local list of cell IDs
labelList
cellId_
;
//- Weight field name - only used for opWeightedAverage mode
word
weightFieldName_
;
// Protected member functions
//- Initialise, e.g. cell addressing
void
initialise
();
void
initialise
(
const
dictionary
&
dict
);
//- Return true if the field name is valid
template
<
class
Type
>
bool
validField
(
const
word
&
fieldName
)
const
;
//- Insert field values into values list
template
<
class
Type
>
bool
setFieldValues
tmp
<
Field
<
Type
>
>
setFieldValues
(
const
word
&
fieldName
,
List
<
Type
>&
values
const
word
&
fieldName
)
const
;
//- Apply the 'operation' to the values
template
<
class
Type
>
Type
processValues
(
const
List
<
Type
>&
values
)
const
;
Type
processValues
(
const
Field
<
Type
>&
values
,
const
scalarField
&
V
,
const
scalarField
&
weightField
)
const
;
//- Output file header information
virtual
void
writeFileHeader
();
...
...
src/postProcessing/functionObjects/field/fieldValues/cellSource/cellSourceTemplates.C
View file @
583e1b1e
...
...
@@ -27,27 +27,16 @@ License
#include "cellSource.H"
#include "volFields.H"
#include "IOList.H"
#include "ListListOps.H"
// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * //
template
<
class
Type
>
bool
Foam
::
fieldValues
::
cellSource
::
setFieldValues
(
const
word
&
fieldName
,
List
<
Type
>&
values
)
const
bool
Foam
::
fieldValues
::
cellSource
::
validField
(
const
word
&
fieldName
)
const
{
values
.
setSize
(
cellId_
.
size
(),
pTraits
<
Type
>::
zero
);
typedef
GeometricField
<
Type
,
fvPatchField
,
volMesh
>
vf
;
if
(
obr_
.
foundObject
<
vf
>
(
fieldName
))
{
const
vf
&
field
=
obr_
.
lookupObject
<
vf
>
(
fieldName
);
values
=
UIndirectList
<
Type
>
(
field
,
cellId_
);
return
true
;
}
...
...
@@ -55,10 +44,29 @@ bool Foam::fieldValues::cellSource::setFieldValues
}
template
<
class
Type
>
Foam
::
tmp
<
Foam
::
Field
<
Type
>
>
Foam
::
fieldValues
::
cellSource
::
setFieldValues
(
const
word
&
fieldName
)
const
{
typedef
GeometricField
<
Type
,
fvPatchField
,
volMesh
>
vf
;
if
(
obr_
.
foundObject
<
vf
>
(
fieldName
))
{
return
filterField
(
obr_
.
lookupObject
<
vf
>
(
fieldName
));
}
return
tmp
<
Field
<
Type
>
>
(
new
Field
<
Type
>
(
0
.
0
));
}
template
<
class
Type
>
Type
Foam
::
fieldValues
::
cellSource
::
processValues
(
const
List
<
Type
>&
values
const
Field
<
Type
>&
values
,
const
scalarField
&
V
,
const
scalarField
&
weightField
)
const
{
Type
result
=
pTraits
<
Type
>::
zero
;
...
...
@@ -71,13 +79,17 @@ Type Foam::fieldValues::cellSource::processValues
}
case
opVolAverage
:
{
tmp
<
scalarField
>
V
=
filterField
(
mesh
().
V
());
result
=
sum
(
values
*
V
())
/
sum
(
V
());
result
=
sum
(
values
*
V
)
/
sum
(
V
);
break
;
}
case
opVolIntegrate
:
{
result
=
sum
(
values
*
filterField
(
mesh
().
V
()));
result
=
sum
(
values
*
V
);
break
;
}
case
opWeightedAverage
:
{
result
=
sum
(
values
*
weightField
)
/
sum
(
weightField
);
break
;
}
default:
...
...
@@ -95,25 +107,20 @@ Type Foam::fieldValues::cellSource::processValues
template
<
class
Type
>
bool
Foam
::
fieldValues
::
cellSource
::
writeValues
(
const
word
&
fieldName
)
{
List
<
List
<
Type
>
>
allValues
(
Pstream
::
nProcs
());
bool
validField
=
setFieldValues
<
Type
>
(
fieldName
,
allValues
[
Pstream
::
myProcNo
()]);
const
bool
ok
=
validField
<
Type
>
(
fieldName
);
if
(
validField
)
if
(
ok
)
{
Pstream
::
gatherList
(
allValues
);
Field
<
Type
>
values
=
combineFields
(
setFieldValues
<
Type
>
(
fieldName
));
scalarField
V
=
combineFields
(
filterField
(
mesh
().
V
()));
scalarField
weightField
=
combineFields
(
setFieldValues
<
scalar
>
(
weightFieldName_
));
if
(
Pstream
::
master
())
{
List
<
Type
>
values
=
ListListOps
::
combine
<
List
<
Type
>
>
(
allValues
,
accessOp
<
List
<
Type
>
>
()
);
Type
result
=
processValues
(
values
);
Type
result
=
processValues
(
values
,
V
,
weightField
);
if
(
valueOutput_
)
{
...
...
@@ -144,7 +151,7 @@ bool Foam::fieldValues::cellSource::writeValues(const word& fieldName)
}
}
return
validField
;
return
ok
;
}
...
...
src/postProcessing/functionObjects/field/fieldValues/faceSource/faceSource.C
View file @
583e1b1e
...
...
@@ -220,7 +220,7 @@ void Foam::fieldValues::faceSource::initialise(const dictionary& dict)
}
default:
{
FatalErrorIn
(
"faceSource::
constructFaceAddressing
()"
)
FatalErrorIn
(
"faceSource::
initiliase
()"
)
<<
type
()
<<
" "
<<
name_
<<
": "
<<
sourceTypeNames_
[
source_
]
<<
"("
<<
sourceName_
<<
"):"
<<
nl
<<
" Unknown source type. Valid source types are:"
...
...
@@ -245,7 +245,7 @@ void Foam::fieldValues::faceSource::initialise(const dictionary& dict)
}
else
{
FatalErrorIn
(
"faceSource::
constructFaceAddressing
()"
)
FatalErrorIn
(
"faceSource::
initialise
()"
)
<<
type
()
<<
" "
<<
name_
<<
": "
<<
sourceTypeNames_
[
source_
]
<<
"("
<<
sourceName_
<<
"):"
<<
nl
<<
" Weight field "
<<
weightFieldName_
...
...
@@ -326,9 +326,12 @@ void Foam::fieldValues::faceSource::write()
if
(
active_
)
{
outputFilePtr_
()
<<
obr_
.
time
().
value
()
<<
tab
<<
sum
(
filterField
(
mesh
().
magSf
()));
if
(
Pstream
::
master
())
{
outputFilePtr_
()
<<
obr_
.
time
().
value
()
<<
tab
<<
sum
(
filterField
(
mesh
().
magSf
()));
}
forAll
(
fields_
,
i
)
{
...
...
@@ -339,7 +342,10 @@ void Foam::fieldValues::faceSource::write()
writeValues
<
tensor
>
(
fields_
[
i
]);
}
outputFilePtr_
()
<<
endl
;
if
(
Pstream
::
master
())
{
outputFilePtr_
()
<<
endl
;
}
if
(
log_
)
{
...
...
@@ -350,4 +356,3 @@ void Foam::fieldValues::faceSource::write()
// ************************************************************************* //
src/postProcessing/functionObjects/field/fieldValues/faceSource/faceSource.H
View file @
583e1b1e
...
...
@@ -153,17 +153,22 @@ protected:
//- Initialise, e.g. face addressing
void
initialise
(
const
dictionary
&
dict
);
//-
Insert field values into values list
//-
Return true if the field name is valid
template
<
class
Type
>
bool
setFieldValues
(
const
word
&
field
N
ame
,
List
<
Type
>&
values
)
const
;
bool
validField
(
const
word
&
fieldName
)
const
;
//- Return field values by looking up
field
n
ame
template
<
class
Type
>
tmp
<
Field
<
Type
>
>
setFieldValues
(
const
word
&
fieldName
)
const
;
//- Apply the 'operation' to the values
template
<
class
Type
>
Type
processValues
(
const
List
<
Type
>&
values
)
const
;
Type
processValues
(
const
Field
<
Type
>&
values
,
const
scalarField
&
magSf
,
const
scalarField
&
weightField
)
const
;
//- Output file header information
virtual
void
writeFileHeader
();
...
...
src/postProcessing/functionObjects/field/fieldValues/faceSource/faceSourceTemplates.C
View file @
583e1b1e
...
...
@@ -33,81 +33,52 @@ License
// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * //
template
<
class
Type
>
bool
Foam
::
fieldValues
::
faceSource
::
setFieldValues
(
const
word
&
fieldName
,
List
<
Type
>&
values
)
const
bool
Foam
::
fieldValues
::
faceSource
::
validField
(
const
word
&
fieldName
)
const
{
values
.
setSize
(
faceId_
.
size
(),
pTraits
<
Type
>::
zero
);