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
00028 namespace Foam
00029 {
00030
00031
00032
00033
00034
00035 inline bool smoothDelta::deltaData::update
00036 (
00037 const smoothDelta::deltaData& w2,
00038 const scalar scale,
00039 const scalar tol
00040 )
00041 {
00042 if (!valid() || (delta_ < VSMALL))
00043 {
00044
00045 delta_ = w2.delta()/scale;
00046
00047
00048 return true;
00049 }
00050 else if (w2.delta() > (1 + tol)*scale*delta_)
00051 {
00052
00053 delta_ = w2.delta()/scale;
00054
00055
00056 return true;
00057 }
00058 else
00059 {
00060
00061
00062 return false;
00063 }
00064 }
00065
00066
00067
00068
00069
00070 inline smoothDelta::deltaData::deltaData()
00071 :
00072 delta_(-GREAT)
00073 {}
00074
00075
00076
00077 inline smoothDelta::deltaData::deltaData(const scalar delta)
00078 :
00079 delta_(delta)
00080 {}
00081
00082
00083
00084
00085 inline bool smoothDelta::deltaData::valid() const
00086 {
00087 return delta_ > -SMALL;
00088 }
00089
00090
00091
00092 inline bool smoothDelta::deltaData::sameGeometry
00093 (
00094 const polyMesh&,
00095 const deltaData&,
00096 const scalar
00097 ) const
00098 {
00099 return true;
00100 }
00101
00102
00103 inline void smoothDelta::deltaData::leaveDomain
00104 (
00105 const polyMesh&,
00106 const polyPatch&,
00107 const label,
00108 const point&
00109 )
00110 {}
00111
00112
00113 inline void smoothDelta::deltaData::transform
00114 (
00115 const polyMesh&,
00116 const tensor&
00117 )
00118 {}
00119
00120
00121
00122 inline void smoothDelta::deltaData::enterDomain
00123 (
00124 const polyMesh&,
00125 const polyPatch&,
00126 const label,
00127 const point&
00128 )
00129 {}
00130
00131
00132
00133 inline bool smoothDelta::deltaData::updateCell
00134 (
00135 const polyMesh&,
00136 const label,
00137 const label,
00138 const deltaData& neighbourWallInfo,
00139 const scalar tol
00140 )
00141 {
00142
00143 return update(neighbourWallInfo, maxDeltaRatio, tol);
00144 }
00145
00146
00147
00148 inline bool smoothDelta::deltaData::updateFace
00149 (
00150 const polyMesh&,
00151 const label,
00152 const label,
00153 const deltaData& neighbourWallInfo,
00154 const scalar tol
00155 )
00156 {
00157
00158 return update(neighbourWallInfo, 1.0, tol);
00159 }
00160
00161
00162
00163 inline bool smoothDelta::deltaData::updateFace
00164 (
00165 const polyMesh&,
00166 const label,
00167 const deltaData& neighbourWallInfo,
00168 const scalar tol
00169 )
00170 {
00171
00172 return update(neighbourWallInfo, 1.0, tol);
00173 }
00174
00175
00176
00177
00178 inline bool smoothDelta::deltaData::operator==
00179 (
00180 const deltaData& rhs
00181 ) const
00182 {
00183 return delta_ == rhs.delta();
00184 }
00185
00186
00187 inline bool smoothDelta::deltaData::operator!=
00188 (
00189 const deltaData& rhs
00190 ) const
00191 {
00192 return !(*this == rhs);
00193 }
00194
00195 }
00196
00197