CFD Online Logo CFD Online URL
Home > Forums > OpenFOAM Pre-Processing

ScalarField division

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

LinkBack Thread Tools Display Modes
Old   August 26, 2007, 17:57
Default I do the following operation b
Senior Member
Maka Mohu
Join Date: Mar 2009
Posts: 305
Rep Power: 11
maka is on a distinguished road
I do the following operation but it gives wrong result (1.22005e-312):

const scalarField& ry = patch().deltaCoeffs();
// magnitude of patch-normal distance from face to cell centers:
const scalarField& yn= 1.0/ry;

but if I make a loop and use:

const scalarField& yn= 1.0/ry[facei];

it gives correct result. How can I do mathematical operations that contain scalarFields and scalars without looping? Thanks.

Best regards,
maka is offline   Reply With Quote

Old   August 26, 2007, 18:16
Default Classic mistake: reference to
Senior Member
Hrvoje Jasak
Join Date: Mar 2009
Location: London, England
Posts: 1,810
Rep Power: 25
hjasak will become famous soon enough
Classic mistake: reference to a temporary: if you do:

scalarField yn= 1.0/ry;

all will be well. Operation 1/ry will return a COPY, i.e. a new field. You took a reference to it, which is a memory error - that's the little & bit after the scalarField.

I bet you already know this - if not, time for a careful look at a good C++ book.

Got it?

Hrvoje Jasak
Providing commercial FOAM/OpenFOAM and CFD Consulting:
hjasak is offline   Reply With Quote

Old   August 27, 2007, 05:10
Default Thanks Hrv for the explanation
Senior Member
Maka Mohu
Join Date: Mar 2009
Posts: 305
Rep Power: 11
maka is on a distinguished road
Thanks Hrv for the explanation.
Best regards,
maka 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
How to set up an AUTO_WRITE scalarField xiao OpenFOAM Running, Solving & CFD 9 July 22, 2010 03:23
max for scalarField maka OpenFOAM Bugs 9 February 19, 2009 10:43
Division by zero vitke OpenFOAM Running, Solving & CFD 5 September 1, 2008 05:35
How to sum up scalarField wese OpenFOAM Running, Solving & CFD 0 March 14, 2008 08:50
Computing a cellcentered scalarField from a vertexcentered scalarField mbeaudoin OpenFOAM Meshing & Mesh Conversion 10 February 22, 2007 08:43

All times are GMT -4. The time now is 20:41.