Reading from User Defined Dictionary File
Hi,
I'm putting together a new solver and need to input some additional parameters for the set up of the problem. I thought it best to do this through the use of a user-defined dictionary file, call it userDict (located in the system folder). I've been through dictionary.H, dictionary.C, dictionaryIO.C to try to figure out how to use the class but am a bit lost in some of the more complex programming aspects. I also went through Time.H, Time.C, and TimeIO.C to try to figure out how controlDict is read from and that was a bit helpful. I believe that I have figured out to use the dictionary (or IOdictionary?) class once I have successfully declared an instance of it, that is where I am stuck. So right now in my readUserControls.H file I have: IOdictionary userDict_(IOobject("userDict",system(),IOobject::M UST_READ,IOobject::NO_WRITE,false)); int lowFn = 0; if (userDict_.found("startFromFn")) { lowFn = readInt(userDict_.lookup("startFromFn")); } int highFn = 1; if (userDict_.found("stopAtFn")) { highFn = readInt(userDict_.lookup("stopAtFn")); } and when I try to compile the solver it errors on the IOdictionary declaration saying that there is "no matching funcion call," basically that there is no IOobject class constructor which has arguments that match the ones that I am trying to give it. All I need help with is figuring out how to successfully declare the dictionary object. Any help? thanks! Bill |
Hello Bill,
A Good Evening to you! I had implemented a solver about 6 months ago, which used a user-defined dictionary file for the parameters specific to the solver.... have a look at the following post: http://www.cfd-online.com/Forums/ope...chanics-3.html If you scroll down to the last third of the page, you will see a set of solvers (turbForceFoam and simpleForceFoam), along with the associated dictionary (forceFoamDict).... Maybe this will be of help to you... If you need any more help, let me know :-)! Have a nice day!! Philippose |
Thanks for the help!
I'm all set for now. |
All times are GMT -4. The time now is 18:29. |