View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001852 | OpenFOAM | Bug | public | 2015-09-16 12:08 | 2015-09-17 10:05 |
Reporter | fabian_roesler | Assigned To | henry | ||
Priority | high | Severity | major | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Platform | Linux | OS | CentOs | OS Version | 6.5 |
Summary | 0001852: Wrong corner weighting in epsilonLowReWallFunction | ||||
Description | The corner weighting in the low Reynolds epsilon wall function is wrong. The weights are stored in the variable w and the epsilon and G values per cell are multiplied with w. However, the summation of the different faces per cell is missing. Active Code of OpenFOAM 2.4.x epsilonLowReWallFunctionFvPatchScalarField.C *************************************************************************** 00088 // Set epsilon and G 00089 forAll(nutw, faceI) 00090 { 00091 label cellI = patch.faceCells()[faceI]; 00092 00093 scalar yPlus = Cmu25*sqrt(k[cellI])*y[faceI]/nuw[faceI]; 00094 00095 scalar w = cornerWeights[faceI]; 00096 00097 if (yPlus > yPlusLam_) 00098 { 00099 epsilon[cellI] = w*Cmu75*pow(k[cellI], 1.5)/(kappa_*y[faceI]); 00100 } 00101 else 00102 { 00103 epsilon[cellI] = w*2.0*k[cellI]*nuw[faceI]/sqr(y[faceI]); 00104 } 00105 00106 G[cellI] = 00107 w 00108 *(nutw[faceI] + nuw[faceI]) 00109 *magGradUw[faceI] 00110 *Cmu25*sqrt(k[cellI]) 00111 /(kappa_*y[faceI]); 00112 } *************************************************************************** Necessary changes in epsilonLowReWallFunctionFvPatchScalarField.C *************************************************************************** 00088 // Set epsilon and G 00089 forAll(nutw, faceI) 00090 { 00091 label cellI = patch.faceCells()[faceI]; 00092 00093 scalar yPlus = Cmu25*sqrt(k[cellI])*y[faceI]/nuw[faceI]; 00094 00095 scalar w = cornerWeights[faceI]; 00096 00097 if (yPlus > yPlusLam_) 00098 { 00099 epsilon[cellI] = w*Cmu75*pow(k[cellI], 1.5)/(kappa_*y[faceI]); 00100 } 00101 else 00102 { 00103 epsilon[cellI] += w*2.0*k[cellI]*nuw[faceI]/sqr(y[faceI]); 00104 } 00105 00106 G[cellI] += 00107 w 00108 *(nutw[faceI] + nuw[faceI]) 00109 *magGradUw[faceI] 00110 *Cmu25*sqrt(k[cellI]) 00111 /(kappa_*y[faceI]); 00112 } *************************************************************************** Only the two + in front of the = in row 103 and 106 are missing. Cheers Fabian | ||||
Tags | No tags attached. | ||||
|
There is also a + missing in front of the = sign in line 99. I missed that when writing the report. |
|
Thanks for the bug-report. Resolved by commit 9bf69ecd0bb19deb1bdfa5d2bb7034b6559242ea Note that the new version of this model in OpenFOAM-dev does not have the bug. |
Date Modified | Username | Field | Change |
---|---|---|---|
2015-09-16 12:08 | fabian_roesler | New Issue | |
2015-09-17 07:48 | fabian_roesler | Note Added: 0005361 | |
2015-09-17 10:04 | henry | Note Added: 0005362 | |
2015-09-17 10:04 | henry | Status | new => resolved |
2015-09-17 10:04 | henry | Resolution | open => fixed |
2015-09-17 10:04 | henry | Assigned To | => henry |