fatal error: alphaContactAngleFvPatchScalarField.H: No such file or directory
Dear foamers, I have been trying to install the vofsmooth on foam-extend 4.0, but I receive errors when executing wmake command. The fatal error I received is "fatal error: alphaContactAngleFvPatchScalarField.H: No such file or directory". I would appreciate it if you could help me resolve the issue.
Here is the output:
interfaceProperties.C:27:49: fatal error: alphaContactAngleFvPatchScalarField.H: No such file or directory
compilation terminated.
make: *** [interfaceProperties.dep:521: Make/linux64GccDPOpt/interfaceProperties.o] Error 1
make: *** Waiting for unfinished jobs....
In file included from curvatureModel/curvatureModel.H:42:0,
from curvatureModel/curvatureModel.C:26:
lnInclude/interfaceProperties.H:81:30: warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11
bool densityWeighted_ = false; // KVA
^
lnInclude/interfaceProperties.H:110:33: error: ‘Foam::surfaceVectorField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>::Boundary’ has not been declared
surfaceVectorField::Boundary& nHat,
^
lnInclude/interfaceProperties.H:111:39: error: ‘Boundary’ in ‘Foam::surfaceVectorField {aka class Foam::GeometricField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>}’ does not name a type
const surfaceVectorField::Boundary& gradAlphaf
^
In file included from curvatureModel/curvatureModel.C:26:0:
curvatureModel/curvatureModel.H:78:33: error: ‘Foam::surfaceVectorField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>::Boundary’ has not been declared
surfaceVectorField::Boundary& nHat,
^
curvatureModel/curvatureModel.H:79:39: error: ‘Boundary’ in ‘Foam::surfaceVectorField {aka class Foam::GeometricField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>}’ does not name a type
const surfaceVectorField::Boundary& gradAlphaf
^
curvatureModel/curvatureModel.C:48:22: error: variable or field ‘correctContactAngle’ declared void
surfaceVectorField::Boundary& nHat,
^
curvatureModel/curvatureModel.C:48:2: error: ‘Boundary’ is not a member of ‘Foam::surfaceVectorField {aka Foam::GeometricField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>}’
surfaceVectorField::Boundary& nHat,
^
curvatureModel/curvatureModel.C:48:32: error: ‘nHat’ was not declared in this scope
surfaceVectorField::Boundary& nHat,
^
curvatureModel/curvatureModel.C:49:2: error: expected primary-expression before ‘const’
const surfaceVectorField::Boundary& gradAlphaf
^
curvatureModel/curvatureModel.C: In static member function ‘static Foam::autoPtr<Foam::curvatureModel> Foam::curvatureModel::New(const Foam::word&, const Foam::interfaceProperties&)’:
curvatureModel/curvatureModel.C:87:3: error: ‘WarningInFunction’ was not declared in this scope
WarningInFunction
^
curvatureModel/curvatureModel.C:94:9: error: ‘FatalErrorInFunction’ was not declared in this scope
FatalErrorInFunction
^
curvatureModel/curvatureModel.C:108:9: error: ‘FatalErrorInFunction’ was not declared in this scope
FatalErrorInFunction
^
In file included from lnInclude/curvatureModel.H:42:0,
from curvatureModel/normal/normal.H:38,
from curvatureModel/normal/normal.C:26:
lnInclude/interfaceProperties.H:81:30: warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11
bool densityWeighted_ = false; // KVA
^
lnInclude/interfaceProperties.H:110:33: error: ‘Foam::surfaceVectorField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>::Boundary’ has not been declared
surfaceVectorField::Boundary& nHat,
^
lnInclude/interfaceProperties.H:111:39: error: ‘Boundary’ in ‘Foam::surfaceVectorField {aka class Foam::GeometricField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>}’ does not name a type
const surfaceVectorField::Boundary& gradAlphaf
^
In file included from curvatureModel/normal/normal.H:38:0,
from curvatureModel/normal/normal.C:26:
lnInclude/curvatureModel.H:78:33: error: ‘Foam::surfaceVectorField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>::Boundary’ has not been declared
surfaceVectorField::Boundary& nHat,
^
lnInclude/curvatureModel.H:79:39: error: ‘Boundary’ in ‘Foam::surfaceVectorField {aka class Foam::GeometricField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>}’ does not name a type
const surfaceVectorField::Boundary& gradAlphaf
^
In file included from lnInclude/curvatureModel.H:42:0,
from curvatureModel/vofsmooth/vofsmooth.H:38,
from curvatureModel/vofsmooth/vofsmooth.C:26:
lnInclude/interfaceProperties.H:81:30: warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11
bool densityWeighted_ = false; // KVA
^
lnInclude/interfaceProperties.H:110:33: error: ‘Foam::surfaceVectorField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>::Boundary’ has not been declared
surfaceVectorField::Boundary& nHat,
^
lnInclude/interfaceProperties.H:111:39: error: ‘Boundary’ in ‘Foam::surfaceVectorField {aka class Foam::GeometricField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>}’ does not name a type
const surfaceVectorField::Boundary& gradAlphaf
^
In file included from curvatureModel/vofsmooth/vofsmooth.H:38:0,
from curvatureModel/vofsmooth/vofsmooth.C:26:
lnInclude/curvatureModel.H:78:33: error: ‘Foam::surfaceVectorField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>::Boundary’ has not been declared
surfaceVectorField::Boundary& nHat,
^
lnInclude/curvatureModel.H:79:39: error: ‘Boundary’ in ‘Foam::surfaceVectorField {aka class Foam::GeometricField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>}’ does not name a type
const surfaceVectorField::Boundary& gradAlphaf
^
make: *** [curvatureModel/curvatureModel.dep:512: Make/linux64GccDPOpt/curvatureModel.o] Error 1
curvatureModel/normal/normal.C: In member function ‘virtual void Foam::curvatureModels::normal::calculateK(Foam::volScalarField&, Foam::surfaceScalarField&) const’:
curvatureModel/normal/normal.C:91:29: error: ‘Foam::surfaceVectorField {aka class Foam::GeometricField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>}’ has no member named ‘boundaryFieldRef’
correctContactAngle(nHatfv.boundaryFieldRef(), gradAlphaf.boundaryField());
^
curvatureModel/vofsmooth/vofsmooth.C: In member function ‘virtual void Foam::curvatureModels::vofsmooth::calculateK(Foam::volScalarField&, Foam::surfaceScalarField&) const’:
curvatureModel/vofsmooth/vofsmooth.C:152:29: error: ‘Foam::surfaceVectorField {aka class Foam::GeometricField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>}’ has no member named ‘boundaryFieldRef’
correctContactAngle(nHatfv.boundaryFieldRef(), gradAlphaf.boundaryField());
^
curvatureModel/vofsmooth/vofsmooth.C: In member function ‘virtual bool Foam::curvatureModels::vofsmooth::read()’:
curvatureModel/vofsmooth/vofsmooth.C:189:3: error: ‘WarningInFunction’ was not declared in this scope
WarningInFunction
^
curvatureModel/vofsmooth/vofsmooth.C:197:4: error: ‘WarningInFunction’ was not declared in this scope
WarningInFunction
^
curvatureModel/vofsmooth/vofsmooth.C:202:4: error: ‘WarningInFunction’ was not declared in this scope
WarningInFunction
^
make: *** [curvatureModel/normal/normal.dep:624: Make/linux64GccDPOpt/normal.o] Error 1
Dear Maryam
I got exactly the same error(I have of6, of9 and of2112) and I tested in all;
I knew that this code has been developed for ;

but one of my friends said that he has compiled this code for OF1812 so I was testing it for other versions, but apparently it has only below options;

do you have any suggestion?
Thanks, Farzad
Hi Farzad, The error says it can't find the alphaContactAngleFvPatchScalarField.H file, because the address to this file in Make/options is wrong. You need to find that file in your OpenFOAM version and change the address in the Make/options. If I remember correctly, I managed to solve the above error, but I got another error and finally had to install of40. After that, instead of using the above solver, to reduce the parasitic currents and improve the curvature, I tried coupling level-set with VOF and found this solver: https://github.com/Venky-94/sclsVofFoam-OpenFoam9, which I managed to install on OF9 and OF2012 successfully.