porousZones.C
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #include "porousZones.H"
00028 #include "Time.H"
00029 #include "volFields.H"
00030
00031
00032
00033 namespace Foam
00034 {
00035 defineTemplateTypeNameAndDebug(IOPtrList<porousZone>, 0);
00036 }
00037
00038
00039
00040 Foam::porousZones::porousZones
00041 (
00042 const fvMesh& mesh
00043 )
00044 :
00045 IOPtrList<porousZone>
00046 (
00047 IOobject
00048 (
00049 "porousZones",
00050 mesh.time().constant(),
00051 mesh,
00052 IOobject::READ_IF_PRESENT,
00053 IOobject::NO_WRITE
00054 ),
00055 porousZone::iNew(mesh)
00056 ),
00057 mesh_(mesh)
00058 {}
00059
00060
00061
00062
00063 void Foam::porousZones::addResistance(fvVectorMatrix& UEqn) const
00064 {
00065 forAll(*this, i)
00066 {
00067 operator[](i).addResistance(UEqn);
00068 }
00069 }
00070
00071
00072 void Foam::porousZones::addResistance
00073 (
00074 const fvVectorMatrix& UEqn,
00075 volTensorField& AU
00076 ) const
00077 {
00078
00079
00080 forAll(*this, i)
00081 {
00082 operator[](i).addResistance(UEqn, AU, false);
00083 }
00084
00085
00086
00087
00088 AU.correctBoundaryConditions();
00089 }
00090
00091
00092 bool Foam::porousZones::readData(Istream& is)
00093 {
00094 clear();
00095
00096 IOPtrList<porousZone> newLst
00097 (
00098 IOobject
00099 (
00100 "porousZones",
00101 mesh_.time().constant(),
00102 mesh_,
00103 IOobject::MUST_READ,
00104 IOobject::NO_WRITE,
00105 false
00106 ),
00107 porousZone::iNew(mesh_)
00108 );
00109
00110 transfer(newLst);
00111
00112 return is.good();
00113 }
00114
00115
00116 bool Foam::porousZones::writeData(Ostream& os, bool subDict) const
00117 {
00118
00119 os << nl << size();
00120
00121
00122 os << nl << token::BEGIN_LIST;
00123
00124
00125 forAll(*this, i)
00126 {
00127 os << nl;
00128 operator[](i).writeDict(os, subDict);
00129 }
00130
00131
00132 os << token::END_LIST << nl;
00133
00134
00135 return os.good();
00136 }
00137
00138
00139
Copyright © 2000-2009 OpenCFD Ltd