11 scalar DAIrkPimpleFoam::L2norm(
const List<scalar>& v)
13 scalar L2norm_v = 0.0;
17 L2norm_v += sqr(v[cellI]);
19 L2norm_v = std::sqrt(L2norm_v);
24 scalar DAIrkPimpleFoam::L2norm(
const List<scalar>& v,
const List<scalar>& V)
26 scalar L2norm_v = 0.0;
30 L2norm_v += sqr(v[cellI] / V[cellI]);
32 L2norm_v = std::sqrt(L2norm_v);
38 vector DAIrkPimpleFoam::L2norm(
const List<vector>&
U)
40 vector L2norm_U = vector::zero;
44 L2norm_U[0] += sqr(
U[cellI][0]);
45 L2norm_U[1] += sqr(
U[cellI][1]);
46 L2norm_U[2] += sqr(
U[cellI][2]);
48 L2norm_U[0] = std::sqrt(L2norm_U[0]);
49 L2norm_U[1] = std::sqrt(L2norm_U[1]);
50 L2norm_U[2] = std::sqrt(L2norm_U[2]);
55 vector DAIrkPimpleFoam::L2norm(
const List<vector>&
U,
const List<scalar>& V)
57 vector L2norm_U = vector::zero;
61 L2norm_U[0] += sqr(
U[cellI][0] / V[cellI]);
62 L2norm_U[1] += sqr(
U[cellI][1] / V[cellI]);
63 L2norm_U[2] += sqr(
U[cellI][2] / V[cellI]);
65 L2norm_U[0] = std::sqrt(L2norm_U[0]);
66 L2norm_U[1] = std::sqrt(L2norm_U[1]);
67 L2norm_U[2] = std::sqrt(L2norm_U[2]);
73 scalar DAIrkPimpleFoam::L2norm(
const surfaceScalarField& Phi)
75 scalar L2norm_Phi = 0.0;
77 forAll(Phi.primitiveField(), cellI)
79 L2norm_Phi += sqr(Phi.primitiveField()[cellI]);
81 forAll(Phi.boundaryField(), patchI)
83 forAll(Phi.boundaryField()[patchI], faceI)
85 L2norm_Phi += sqr(Phi.boundaryField()[patchI][faceI]);
88 L2norm_Phi = std::sqrt(L2norm_Phi);
93 scalar DAIrkPimpleFoam::L2norm(
const surfaceScalarField& Phi,
const surfaceScalarField& SfArea)
95 scalar L2norm_Phi = 0.0;
97 forAll(Phi.primitiveField(), cellI)
99 L2norm_Phi += sqr(Phi.primitiveField()[cellI] / SfArea.primitiveField()[cellI]);
101 forAll(Phi.boundaryField(), patchI)
103 forAll(Phi.boundaryField()[patchI], faceI)
105 L2norm_Phi += sqr(Phi.boundaryField()[patchI][faceI] / SfArea.boundaryField()[patchI][faceI]);
108 L2norm_Phi = std::sqrt(L2norm_Phi);
113 vector DAIrkPimpleFoam::getMaxAbs(
const List<vector>&
U)
115 vector maxAbsVec = {0.0, 0.0, 0.0};
118 if (maxAbsVec[0] < std::abs(
U[cellI][0]))
120 maxAbsVec[0] = std::abs(
U[cellI][0]);
123 if (maxAbsVec[1] < std::abs(
U[cellI][1]))
125 maxAbsVec[1] = std::abs(
U[cellI][1]);
128 if (maxAbsVec[2] < std::abs(
U[cellI][2]))
130 maxAbsVec[2] = std::abs(
U[cellI][2]);