CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM (http://www.cfd-online.com/Forums/openfoam/)
-   -   How to give enough info to get help (http://www.cfd-online.com/Forums/openfoam/98988-how-give-enough-info-get-help.html)

linnemann March 23, 2012 03:48

How to give enough info to get help
 
This is a repost of another post hoping that it can be made sticky.

An example on how to get proper help following the guideline shown.

I will try to give an example taken purely from my own imagination that show the kind of info I would like in order to help people.

=== 0 ===
Prepare for getting help. cfd-online does not provide large filesize uploads so registering a dropbox/box account and use a public link to the picture/file makes it a lot easier to share files/pics or the full case.

=== 1 ===

First give it a relevant name in the title of the thread

simpleFoam pipe case diverges

What this little information tells us is that the solver is simpleFoam, the geometry is a pipe and we know that the problem is that it diverges.

=== 2 ===
Second give a sketch of the geometry, a screendump of the mesh and maybe even a cut through the mesh. Paraview and the Clip filter works good here.
This helps immensely when trying to visualise the case in others brains.
The "a picture says more than a thousand words" quote springs to mind here

Below is an example of a picture inserted using a public link from dropbox.

http://dl.dropbox.com/u/15968063/pipeScreen.png

Also the first info you need to give is the output from checkMesh put into a log file

Code:

checkMesh > checkMesh.log
checkMesh.log

Ok now people know that you have a pipe with two bends and that the mesh is fully structured (paraview shows some as tets, but that is a render issue). The dimensions of the pipe is also known now. Also from the header files people know that you are using OpenFOAM version 2.1.x, this is relevant since there can be some bugs in the version used.

=== 3 ===
Ok now we are ready to start identifying the problem.
You know that you have divergence problems and if you have opened just one book about CFD, you know that stability is related to a number of things.
  • Mesh -> We get good output from checkMesh so thats ok
  • Solver -> This we get from the fvSolution file so upload/link that
  • Schemes -> From the fvSchemes file so upload/link that

fvSolution
fvSchemes

This will allow people to see if you have the correct setup for the type of case/mesh you have.

=== 4 ===
Also some good information to give is the output from the terminal, but please don't post 10+ iterations. Post only the relevant bits, for example the 2-3 iterations where the solver start to diverge. Another options would be to give the log file as a upload/link. The output can be put into a file using.

Code:

simpleFoam > simpleFoam.log 2>&1
Below is an example of two iterations, they don't diverge but you get the drift.

Code:

Time = 11

smoothSolver:  Solving for Ux, Initial residual = 0.0394701, Final residual = 0.00283316, No Iterations 4
smoothSolver:  Solving for Uy, Initial residual = 0.0244406, Final residual = 0.00163773, No Iterations 4
smoothSolver:  Solving for Uz, Initial residual = 0.211626, Final residual = 0.0144428, No Iterations 4
GAMG:  Solving for p, Initial residual = 0.332445, Final residual = 0.0124884, No Iterations 7
time step continuity errors : sum local = 0.0803619, global = 0.0111056, cumulative = 0.0907056
smoothSolver:  Solving for epsilon, Initial residual = 0.0137779, Final residual = 0.000915039, No Iterations 3
smoothSolver:  Solving for k, Initial residual = 0.0205267, Final residual = 0.00103642, No Iterations 4
ExecutionTime = 6.07 s  ClockTime = 6 s

Time = 12

smoothSolver:  Solving for Ux, Initial residual = 0.0966665, Final residual = 0.00756253, No Iterations 4
smoothSolver:  Solving for Uy, Initial residual = 0.103096, Final residual = 0.00828772, No Iterations 4
smoothSolver:  Solving for Uz, Initial residual = 0.122408, Final residual = 0.00767765, No Iterations 4
GAMG:  Solving for p, Initial residual = 0.181939, Final residual = 0.00707472, No Iterations 5
time step continuity errors : sum local = 0.0780837, global = -0.0134194, cumulative = 0.0772862
smoothSolver:  Solving for epsilon, Initial residual = 0.0127022, Final residual = 0.000977349, No Iterations 3
smoothSolver:  Solving for k, Initial residual = 0.0222577, Final residual = 0.00121352, No Iterations 4
ExecutionTime = 6.46 s  ClockTime = 7 s


=== 5 ===
This might seem like a lot of work, but if you want people to invest time on you, you must invest at least as much time in asking the right question and give sufficient input to allow people to help you.

I'm sure that if you follow this simple guide you will get the help you need.

niklas March 23, 2012 10:33

I made this thread sticky.

And some other points.
Don't hijack other threads and don't post the same question multiple times.
I see that some people post new questions in active threads cause they think this will attract more readers. Do not do this, since it makes it really hard to search the forum.

And heads up. If you post a question in this thread I will just remove it. So don't do that either.

akidess March 31, 2012 06:47

Linnemann's sample post and some more tips can be found on the wiki as well: http://openfoamwiki.net/index.php/Ho..._Message_Board

amin144 August 9, 2012 05:23

It's a good job that people doing in other forums always.
Summarizing all different thread about one subject.
It will be more perfect with attached simple cases for download for new users.
And finally some threds like it could became a pdf file for users.

akidess February 10, 2013 07:52

Relevant: doi:10.1371/journal.pcbi.1002202 (http://www.ploscompbiol.org/article/...l.pcbi.1002202)

wyldckat May 1, 2013 17:13

3 Attachment(s)
Section "3.3.3 Solver output" at openfoamwiki.net already explains the following, but feel free to point people to this post for instructions on how to post code in the forum.
__________________

Take for example this piece of code:
Code:

        nSend = 0;
        forAll(complexData, i)
        {
            label procI = complexData[i].first();
            sendMap[procI][nSend[procI]++] = i;
        }

It looks nice and tidy, because I used the "[CODE]" tag. Without it, it would look something like this:

nSend = 0;
forAll(complexData, i)
{
label procI = complexData[i].first();
sendMap[procI][nSend[procI]++] = i;
}


So, to avoid messy looking posts with ugly code in the middle of a post, use the "[CODE]" tag. There are two ways to do this:
  1. You can type it manually like this:
    HTML Code:

    [CODE]        nSend = 0;
            forAll(complexData, i)
            {
                label procI = complexData[i].first();
                sendMap[procI][nSend[procI]++] = i;
            }
    [/CODE]

  2. Or you can use the forum interface, more specifically the "Advanced Editor Interface", by clicking on the hash-tag symbol http://www.cfd-online.com/Forums/images/editor/code.gif, as shown in the attached images "before.png" and "after.png" (the 1st and 2nd images, look to where the red arrow is pointing).
  3. The "Advanced Editor Interface" can be accessed by clicking on the button "Go Advanced", as shown in the attached image "quick_reply.png" (the 3rd image, look to where the red arrow is pointing).

gschaider June 20, 2013 19:59

Two more things of a more technical nature (that are bothering me sometimes):
  • When showing pictures from paraview if possible use the cell values as these are the values that OpenFOAM uses/writes. The point values are interpolated by Paraview so any "problem" you see there may be a paraview problem
  • If referring to an article in another thread please use the permalink (the #42 in the upper right corner of the article). Threads can be very long and you can't expect people to read them as a whole an guess what article you meant

Maybe these points can be added if the original article is updated/extended (along with other valuable remarks in this thread like on citing code etc)

musahossein February 22, 2015 13:10

Quote:

Originally Posted by wyldckat (Post 424508)
Section "3.3.3 Solver output" at openfoamwiki.net already explains the following, but feel free to point people to this post for instructions on how to post code in the forum.
__________________

Take for example this piece of code:
Code:

        nSend = 0;
        forAll(complexData, i)
        {
            label procI = complexData[i].first();
            sendMap[procI][nSend[procI]++] = i;
        }

It looks nice and tidy, because I used the "[CODE]" tag. Without it, it would look something like this:

nSend = 0;
forAll(complexData, i)
{
label procI = complexData[i].first();
sendMap[procI][nSend[procI]++] = i;
}


So, to avoid messy looking posts with ugly code in the middle of a post, use the "[CODE]" tag. There are two ways to do this:
  1. You can type it manually like this:
    HTML Code:

    [CODE]        nSend = 0;
            forAll(complexData, i)
            {
                label procI = complexData[i].first();
                sendMap[procI][nSend[procI]++] = i;
            }
    [/CODE]

  2. Or you can use the forum interface, more specifically the "Advanced Editor Interface", by clicking on the hash-tag symbol http://www.cfd-online.com/Forums/images/editor/code.gif, as shown in the attached images "before.png" and "after.png" (the 1st and 2nd images, look to where the red arrow is pointing).
  3. The "Advanced Editor Interface" can be accessed by clicking on the button "Go Advanced", as shown in the attached image "quick_reply.png" (the 3rd image, look to where the red arrow is pointing).

Thanks. i will make sure that I follow this in the future!


All times are GMT -4. The time now is 01:54.