|
[Sponsors] |
April 12, 2010, 10:03 |
How to read in vectors
|
#1 |
New Member
Michael Gruber
Join Date: Oct 2009
Location: Graz
Posts: 13
Rep Power: 17 |
Hello,
I'm trying to read in a vector, eg. the gravity, from a dictionary and to initialize it as constant of a class, eg. A. With bool variables it is possible to programm the constructor like this: A::A() : dict_(IOobject( "dict", U.time().constant(), U.db(), IOobject::MUST_READ, IOobject::NO_WRITE)), a_(readBool(dict_.lookup("a"))) {} Does there exist a readVector command similar to the readBool like: b_(readVector(dict_.lookup("b"))) or how could this be done? Thanks, Michael |
|
April 12, 2010, 10:13 |
|
#2 |
Senior Member
Niels Gjoel Jacobsen
Join Date: Mar 2009
Location: Copenhagen, Denmark
Posts: 1,903
Rep Power: 37 |
Hi Michael
It depends on what format the vector is given in the dictionary. If it is merely a vector, you can read it as vector(dict.lookup("a")) however if it is a dimensioned vector in the dict, then you should type dimensionedVector(dict.lookup("a")) Hope it helps, Niels |
|
April 12, 2010, 10:17 |
|
#3 |
New Member
Silvan Brändli
Join Date: Aug 2009
Posts: 27
Rep Power: 17 |
Hi Michael
I use something like this: environmentalProperties_ ( IOobject ( "environmentalProperties", runTime_.constant(), mesh_, IOobject::MUST_READ, IOobject::NO_WRITE ) ), g_(environmentalProperties_.lookup("g")), with g_ being: dimensionedVector g_; Hope this helps Silvan |
|
April 12, 2010, 10:57 |
|
#4 |
New Member
Michael Gruber
Join Date: Oct 2009
Location: Graz
Posts: 13
Rep Power: 17 |
Thank you for your replies. They helped me quite a lot.
|
|
December 3, 2015, 08:26 |
how to read vector for user-difined Dict Openfoam
|
#5 |
New Member
LU
Join Date: Oct 2015
Posts: 11
Rep Power: 11 |
I'm trying to read in a vector, eg. the point of the rotating center, from a dictionary and to initialize it as constant of a application, eg. A.I have susscceful to define a scaler
scalar omega=0; omega=readScalar(myDict.lookup("omega"); And now i want to do the same thing for a vector, but when i use readVector instead of readScaler, the error is that: the readVector is not declared, so i do not know how to declare it ? And I know there is also a dimensionedVecotr , so I try const vector r (0,0,0) dimensionedVector(myDict.looup("r"); in the case ,i can compile it but in the result ,the real value of r in myDIct is not read, it just use the (0,0,0) .so could you tell me the reasons or give me some suggestion. Thank you so much Best regards Lu |
|
September 26, 2017, 14:21 |
|
#6 |
Senior Member
Bobby
Join Date: Oct 2012
Location: Michigan
Posts: 454
Rep Power: 16 |
It might be a litlle late and the topic is very easy. However, still some people might find it helpful.
It should be declared as: Code:
vector ExtElec = elPropDict.lookup("ExtElec"); |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
problem when converting mesh (made by ICEM) using fluentMeshToFoam | Forrest_Lei | OpenFOAM | 11 | October 16, 2009 07:28 |
Phase locked average in run time | panara | OpenFOAM | 2 | February 20, 2008 15:37 |
Integration Points and normal area vectors | Bloshchitsyn Vladimir | CFX | 0 | November 26, 2007 08:35 |
2 velocity vectors | ashish | CFX | 3 | June 19, 2007 19:32 |
Error Fluents | TDL | FLUENT | 6 | April 26, 2005 07:02 |