CFD Online Logo CFD Online URL
Home > Forums > OpenFOAM Programming & Development

How can I load a file.txt in OpenFoam?

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree2Likes
  • 1 Post By Marco_poli
  • 1 Post By JimKnopf

LinkBack Thread Tools Display Modes
Old   May 24, 2012, 15:59
Default How can I load a file.txt in OpenFoam?
New Member
Join Date: May 2012
Posts: 2
Rep Power: 0
Marco_poli is on a distinguished road

I have a table containing the y+ u+ k+ and omega+ values for the kOmegaSST turbulence model and this table is stored in a txt file.
I want to modify the kOmegaSST.C and kOmegaSST.H to be able to load this file in the model (for example in a matrix) and take these values if need them. I'm studing a new way to impose the boundary condition but I'm quite new in programming in OpenFoam.
My main questions are:
-How could I initialize a matrix of scalar values?
-How could I load the file.txt and put its values in the matrix?
Any suggestions will be appreciate

Thank you very much
Best regards
hua1015 likes this.
Marco_poli is offline   Reply With Quote

Old   May 25, 2012, 04:47
Jim Knopf
Join Date: Dec 2010
Posts: 60
Rep Power: 8
JimKnopf is on a distinguished road
File reading:

you can use<fstream> to read in files, like in standard c++

string line;ifstream myfile ("example.txt");
getline (myfile,line);

than convert to what ever you have.

Matrix of scalar values:

What exactly is it you expect to have? A scalarField, like p or a vector field like u?
Or a Matrix of size nxm?

Best Regards,
mm.abdollahzadeh likes this.
JimKnopf is offline   Reply With Quote

Old   May 26, 2012, 09:17
New Member
Join Date: May 2012
Posts: 2
Rep Power: 0
Marco_poli is on a distinguished road
Thank you very much Jim!

Finally I solve the problem using IFstream as you suggest:

RectangularMatrix<doubleScalar> TABLE(IFstream("table.txt")());

that save the table in a matrix.
If someone is interested the file table.txt must have this shape

2 3
( 1 2 3)
( 4 5 6)

where in the first line 2 is the number of rows and 3 is the number of columns.
In this way we store the following matrix

[ 1 2 3
4 5 6]

Best Regards
Marco_poli is offline   Reply With Quote

Old   September 13, 2016, 10:24
New Member
Join Date: Jun 2014
Location: Oslo
Posts: 29
Rep Power: 4
pakanatiakash is on a distinguished road

I guess its an old post but I thought its worth asking. I am also in the same situation where I need to read values from tables and use them in solving my equations.

I have a 2x2 matrix -

2 2
(-0.01 1.0e10)
(-0.005 8.e10)

I read it by following the same routine -

RectangularMatrix<doubleScalar>NucTuc(IFstream("co nstant/innocValues")());

NucTuc is my matrix. Now the question is, after reading the table, how can i access each value. For example I want to access the value -0.01 which is located in 1x1 position, how do I do it?


pakanatiakash is offline   Reply With Quote


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
Compiling OpenFOAM on kaergaard OpenFOAM Installation 1 June 16, 2011 01:33
createPatch / cyclicGgi / OpenFoam 1.5-dev OFU OpenFOAM Meshing & Mesh Conversion 0 June 16, 2010 04:36
64bitrhel5 OF installation instructions mirko OpenFOAM Installation 2 August 12, 2008 18:07
Adventure of fisrst openfoam installation on Ubuntu 710 jussi OpenFOAM Installation 0 April 24, 2008 14:25
OpenFOAM Training and Workshop Zagreb 2628Jan2006 hjasak OpenFOAM 1 February 2, 2006 22:07

All times are GMT -4. The time now is 23:32.