- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have a time marching CFD code that I have written using the Intel Visual Fortran 8 Compiler. To monitor the convergence I write quantities such as mass flow, residuals etc to screen as text every nth timestep, in this way I can examine these as the solution progresses to be certain that my solution is converging.
Since some of my solve times are long ( 33 hrs for a domain with 600,000 cells ) eyeballing the residuals can become a bit tedious and so I was hoping to write some code to add to my convergence subroutine that would plot these as the solution progresses, that way I can monitor convergence much more easily.
Needless to say after trying for a while all I've discovered is that it is much more difficult than I thought... Hence the common question - is it really feasible for me to try writing code for this ( and if so I'd be grateful if anyone could give me some ideas of where I may look for examples - a google search doesn't turn up much ), or should I be using an external library ( and does such a library exist for the Intel compiler ? ).
Thank you for your kind assistance,
Simon.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
To get an idea of how to write code to call the array visualizer, I have tried running the example sine2D but on building get the error 'Error in opening library module file [AVOBJMOD]
Do I need to include a path to this in the source code ?
Thank you,
Simon
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Simon,
The Array Visualizer is very nice for dynamic plotting. e.g. eyeball-ing for convergence. I have been using AV for a couple of years now and was sad to see it yanked from IVF. For my use I use 3D graphs to display a tension structure complete with charts of Tension, Elastic Area, Stress, Strain. These graphs are updated periodicaly as the simulation runs. It is not unusual for simulation runs to go several 100's of hours between checkpoints (even on a 4 core server). In this manner I can notice activity quicker than by using the traditional approach of performing post-mortum analysis of a simulation "crash". Also the eyeball technique can catch things you didn't plan on and for which you hadn'twritten a post-run report.
The other neet thing you can do is write ad-hoc graphs. If you instruct AV to watch data (e.g. a table of results) but for which you did not add plots. While you program is running, you can use AV to monitor the contents of the watched array. In addition to this, while you are running, you can also add an XY plot to view the data graphicaly.
The learning curve on AV is quite steep. But you can do some simple things quite easily.
If you need some pointers you can contact me by email jim_dempsey@ameritech.net
Jim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have been using the PLplot plotting library (which is free and available at sourceforge) and have been happy with the results. If you are interested I can provide additional details.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You could write intermediate results to a text file and make a system call to Gnuplot (a free graphing program available for most operating systems, including Windows). I do this, and it works for any compiler with the "system" subroutine or equivalent.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page