wave2foam dictionary waveProperties objectRegistry request failed
Hi,
I am running interFoam with wave2foam. The mesh, setFields, setWaveField stuff and etc are fine, however, when I type $ interFoam in the terminal, fatal error occurs. --> FOAM FATAL ERROR: request for dictionary waveProperties from objectRegistry region0 failed available objects of type dictionary are 2 ( fvSchemes fvSolution ) From function objectRegistry::lookupObject<Type>(const word&) const in file /opt/openfoam171/src/OpenFOAM/lnInclude/objectRegistryTemplates.C at line 139. FOAM aborting I've included the wave2foam library in the controlDict (libs ( "libwaves2Foam.so" ) ), and the 'waveProperties' is placed in the 'constant' directory. Could you help indicate what I should do please? Thanks a lot in advance! |
Hi Sophie,
This is not possible. You need to use waveFoam instead of interFoam. / Niels |
Hi Niels,
Thanks a lot! I am using openfoam 1.7.1. I thought I've installed wave2foam without error messages. However, the solver waveFoam cannot be found. So I tried to compile waveFoam from /OpenFOAM/waves2Foam/applications/solvers/solvers170/waveFoam, using 'wmake', and the following errors occured. Quote:
Thank you very much! Sophie |
Hi Sophie,
It is because there are subtle differences between the versions. Please follow the guide on http://openfoamwiki.net/index.php/Contrib/waves2Foam, which in detail describes the needed modifications in order to obtain waveFoam from interFoam. However, how come you have settled on OF171? More recent version exist, and waves2Foam compiles on all of them (though, no solver is distributed along with OF2.2.0 as of now). Kind regards, Niels |
Hi Niels,
Thank you so much for your patience with a linux dummy. I've modified waveFoam.C from interFoam (v1.7.1) as instructed by the website in your post. When I try to compile it, the 'undefined reference' stuff occur again. I saw some posts mentioning the same problem, but didn't work out how to fix it. Just wondering could you shed some light on this please? Quote:
Sophie |
Hi Sophie,
Sorry for the latency. I have seen this type of error many times, however, but only if I use a version of interFoam, which is not compatible with the version of OpenFoam. Now, that you have used interFoam from 171, it hardly makes sense. The only way forward (at least when sticking to 1.7.1) is to try, whether you are able to compile interFoam without any modifications at all. If that is possible, you can try to add the waves2Foam functionalities one at the time. Kind regards, Niels |
Hi Niels,
Thank you so much for your guidance. Luckily my supervisor helped me with the compilation and it's done now. However, I can only run waveFoam with laminar mode, and cannot run it with RASModel, the error message is Quote:
Thanks! Sophie |
Hi Sophie,
It looks like an upstream error. interFoam/waveFoam should automatically detect your choice of turbulence model, i.e. laminar, reynolds averaged, LES. You have to be more specific in what you change where, otherwise I can only be guessing on what goes wrong. / Niels |
Hi Niels,
Thanks a lot for your reply. I copied the interFoam folder and renamed it as solver171. A waveFoam.C was modified as instructed by the wave2foam wiki page. Then I changed the 'Make/options' file as follows Quote:
I didn't change anywhere else, so I am thinking the 'options' file should give out some clue. Many thanks, Sophie |
Can you run your standard interFoam tutorials with anything but laminar? If this is possible, then I really do not understand the problems.
Kind regards, NIels |
I've run the tutorial case ras/dambreak with interFoam and everything is ok! Another strange thing is that the error message occurred again when I tried to set up the alpha1 value for the waveFoam case. When I type 'setFields' in the terminal, it says
Quote:
Many thanks, Sophie |
Hi Sophie,
I recommend that you use setWaveField as setFields does not load waveProperties, which is needed by the boundary conditions in alpha1. Kind regards, Niels |
All times are GMT -4. The time now is 18:07. |