3D plotting/animation library.

  • Follow


Hello,

I'm making an N-body simulation with one star and many (e.g. 10^6) test 
particles. I think it would be nice if I could make a movie / animation 
of the entire simulation and I was wondering if anyone knows of a 
Fortran plotting library or other tool that could do this.


The only idea I have so far is to use Gnuplot, which can produce GIF 
animations. But GIF animations are not idea, and Gnuplot is fairly slow 
at making the animations. I don't know if it could reasonably handle an 
animation with 10^6 points. This is not the sort of thing that Gnuplot 
was designed for. Can anyone offer an alternative idea?

Cheers,
Daniel.
0
Reply daniel8127 (276) 10/5/2011 3:03:43 PM

On 10/05/2011 05:03 PM, Daniel Carrera wrote:
> I'm making an N-body simulation with one star and many (e.g. 10^6) test
> particles. I think it would be nice if I could make a movie / animation
> of the entire simulation and I was wondering if anyone knows of a
> Fortran plotting library or other tool that could do this.

I think you'd be best of writing the data to a structured file like netcdf and
visualize with a dedicated tool like simvis (that's one piece of software our
vis guys are using). Perhaps someone at your site can give you a hint there?

Regards, Thomas
0
Reply jahns (51) 10/5/2011 4:15:23 PM


On 10/05/2011 06:15 PM, Thomas Jahns wrote:
> On 10/05/2011 05:03 PM, Daniel Carrera wrote:
>> I'm making an N-body simulation with one star and many (e.g. 10^6) test
>> particles. I think it would be nice if I could make a movie / animation
>> of the entire simulation and I was wondering if anyone knows of a
>> Fortran plotting library or other tool that could do this.
>
> I think you'd be best of writing the data to a structured file like netcdf and
> visualize with a dedicated tool like simvis (that's one piece of software our
> vis guys are using). Perhaps someone at your site can give you a hint there?

That seems extremely complicated.

I've just spent an hour searching and it looks like it'll be difficult 
to find a pre-made program that uses NetCDF files to make a movie of an 
N-body simulation. Almost everything I see is about oceanography and 
weather. And the application has to be free, and run on Linux...

Next, I'd have to learn the NetCDF API and learn how the application 
expects me to lay out data inside the NetCDF file. That's one issue with 
these �ber-generic file formats.

I just want to plot a bunch of points in 3D and make a movie out of it 
with the points moving... Maybe I'll use Gnuplot after all...

Daniel.
0
Reply daniel8127 (276) 10/5/2011 7:21:33 PM

Hi Daniel,

> I'm making an N-body simulation with one star and many (e.g. 10^6) test
> particles. I think it would be nice if I could make a movie / animation
> of the entire simulation and I was wondering if anyone knows of a
> Fortran plotting library or other tool that could do this.
>
> The only idea I have so far is to use Gnuplot, which can produce GIF
> animations. But GIF animations are not idea, and Gnuplot is fairly slow
> at making the animations. I don't know if it could reasonably handle an
> animation with 10^6 points. This is not the sort of thing that Gnuplot
> was designed for. Can anyone offer an alternative idea?

a ray-tracer like POV-Ray might the right tool for this purpose. I
haven't worked with it myself, but I know that people have used it to
make visualizations of heavy-ion collisions (where one also deals with
"test particles"). For an example see:

http://gibuu.physik.uni-giessen.de/GiBUU/wiki/largeMovie

Cheers,
Janus
0
Reply janus (26) 10/5/2011 8:00:49 PM

Perhaps try bitmaps. There is a Calcomp-compatible software that can be
used.(pb268.zip)..
I don't remember where to find it, but it was a lahey-compatible effort.
Try Google.I'm proposing to use it for similar purposes, but static.

Extract:-
PLTBMP v2.68 - A Graphics  Library for LF95
This software is Copyright 2008 Kenneth G. Hamilton,
You are authorized to use this software for any legal purpose,
and to distribute complete unmodified copies to others.
(etc)



0
Reply tbwright1 (218) 10/5/2011 11:15:35 PM

Assuming you have a decent video card, you can use Visit 

https://wci.llnl.gov/codes/visit/

and use point3d format which is just a listing of the coordinates of each 
point (which is probably what you have anyway for gnuplot)

x, y, z
x, y, z
x, y, z
....

Number the files  sequentially (i.e. output.0001.out, 
output.0002.out,...) for each time step and then you can step through 
time (and make a movie).

0
Reply epilogue (7) 10/6/2011 6:22:00 AM

Hi,

not sure if it is up to the task - I have never used it on that amount
of data, but you might want to have a look at PLplot -
http://plplot.sf.net (or any one of the many plot libraries that are
around).

If rendering the data time frame by time frame is not fast enough,
then I would say:
- Prepare the time frames and store them as picture files
- Use a tool like ImageMagick to turn the stack of picture files into
   a convenient animation file (there are many free tools around other
   than ImageMagick, depending on your platform)

Regards,

Arjen

On 2011-10-05 17:03, Daniel Carrera wrote:
> Hello,
> 
> I'm making an N-body simulation with one star and many (e.g. 10^6) test 
> particles. I think it would be nice if I could make a movie / animation 
> of the entire simulation and I was wondering if anyone knows of a 
> Fortran plotting library or other tool that could do this.
> 
> 
> The only idea I have so far is to use Gnuplot, which can produce GIF 
> animations. But GIF animations are not idea, and Gnuplot is fairly slow 
> at making the animations. I don't know if it could reasonably handle an 
> animation with 10^6 points. This is not the sort of thing that Gnuplot 
> was designed for. Can anyone offer an alternative idea?
> 
> Cheers,
> Daniel.
0
Reply arjen.markus895 (633) 10/6/2011 7:12:28 AM

On 10/06/2011 08:22 AM, brtnfld wrote:
> Assuming you have a decent video card, you can use Visit
>
> https://wci.llnl.gov/codes/visit/
>
> and use point3d format which is just a listing of the coordinates of each
> point (which is probably what you have anyway for gnuplot)
>
> x, y, z
> x, y, z
> x, y, z
> ...
>
> Number the files  sequentially (i.e. output.0001.out,
> output.0002.out,...) for each time step and then you can step through
> time (and make a movie).

Interesting. Yes, that's exactly what I would have given to Gnuplot 
anyway. I saw this program yesterday while Googling but I didn't realize 
that it could do the plots I needed. I'm going to take a second look 
now. Thanks.

Daniel.
0
Reply daniel8127 (276) 10/6/2011 7:34:11 AM

Thanks for the suggestion. It's a good idea. I could make individual 
images with either PLplot or Gnuplot and combine them with ImageMagick.

Cheers,
Daniel.

On 10/06/2011 09:12 AM, arjenmarkus wrote:
> Hi,
>
> not sure if it is up to the task - I have never used it on that amount
> of data, but you might want to have a look at PLplot -
> http://plplot.sf.net (or any one of the many plot libraries that are
> around).
>
> If rendering the data time frame by time frame is not fast enough,
> then I would say:
> - Prepare the time frames and store them as picture files
> - Use a tool like ImageMagick to turn the stack of picture files into
> a convenient animation file (there are many free tools around other
> than ImageMagick, depending on your platform)
>
> Regards,
>
> Arjen
>
> On 2011-10-05 17:03, Daniel Carrera wrote:
>> Hello,
>>
>> I'm making an N-body simulation with one star and many (e.g. 10^6)
>> test particles. I think it would be nice if I could make a movie /
>> animation of the entire simulation and I was wondering if anyone knows
>> of a Fortran plotting library or other tool that could do this.
>>
>>
>> The only idea I have so far is to use Gnuplot, which can produce GIF
>> animations. But GIF animations are not idea, and Gnuplot is fairly
>> slow at making the animations. I don't know if it could reasonably
>> handle an animation with 10^6 points. This is not the sort of thing
>> that Gnuplot was designed for. Can anyone offer an alternative idea?
>>
>> Cheers,
>> Daniel.

0
Reply daniel8127 (276) 10/6/2011 7:35:47 AM

Daniel Carrera wrote:
> Hello,
>
> I'm making an N-body simulation with one star and many (e.g. 10^6)
> test particles. I think it would be nice if I could make a movie /
> animation of the entire simulation and I was wondering if anyone
> knows of a Fortran plotting library or other tool that could do this.
>
>
> The only idea I have so far is to use Gnuplot, which can produce GIF
> animations. But GIF animations are not idea, and Gnuplot is fairly
> slow at making the animations. I don't know if it could reasonably
> handle an animation with 10^6 points. This is not the sort of thing
> that Gnuplot was designed for. Can anyone offer an alternative idea?
>
> Cheers,
> Daniel.

You haven't said what platform you are using. In the possibly unlikely case 
(since you would then probably know this) that you are using Compaq or Intel 
VF for Windows, these had/have the ability to use "Array Visualizer" to show 
3D animations driven by a running Fortran program, and there was/is(?) a 
sample program in the samples provided. 


0
Reply dajxxxx (39) 10/7/2011 9:31:03 AM

On 10/07/2011 11:31 AM, David Jones wrote:
> You haven't said what platform you are using. In the possibly unlikely case
> (since you would then probably know this) that you are using Compaq or Intel
> VF for Windows, these had/have the ability to use "Array Visualizer" to show
> 3D animations driven by a running Fortran program, and there was/is(?) a
> sample program in the samples provided.

Sorry, I guess I implicitly assumed that everyone here uses some form of 
Unix. My desktop is Linux and I have access to a couple of clusters 
which are either Linux or Unix... probably Linux.

Cheers,
Daniel.
0
Reply daniel8127 (276) 10/7/2011 11:41:02 AM

Daniel Carrera <daniel@gmail.com> wrote:

> Sorry, I guess I implicitly assumed that everyone here uses some form of
> Unix. 

Not a very good assumption, I'm afraid. I'm on a Unix box (specifically
OS X), but I wouldn't count on Unix even being a majority, much less
"everyone". Unix of some sort or other (including Linux and OS X)
probably has a higher fraction of representation here than in many
places, but there are an awful lot of Windows users on the group -
perhaps a majority. There are also at least a few uers of IBM mainframe
operating systems.

-- 
Richard Maine                    | Good judgment comes from experience;
email: last name at domain . net | experience comes from bad judgment.
domain: summertriangle           |  -- Mark Twain
0
Reply nospam47 (9742) 10/7/2011 1:53:26 PM

On 10/07/2011 03:53 PM, Richard Maine wrote:
> Daniel Carrera<daniel@gmail.com>  wrote:
>
>> Sorry, I guess I implicitly assumed that everyone here uses some form of
>> Unix.
>
> Not a very good assumption, I'm afraid. I'm on a Unix box (specifically
> OS X), but I wouldn't count on Unix even being a majority, much less
> "everyone". Unix of some sort or other (including Linux and OS X)
> probably has a higher fraction of representation here than in many
> places, but there are an awful lot of Windows users on the group -
> perhaps a majority. There are also at least a few uers of IBM mainframe
> operating systems.

Yeah, I just didn't think. Force of habit I guess. Around my department, 
everyone who is not running Linux, is running OS X, so I occasionally 
forget about Windows.

Cheers,
Daniel.
0
Reply daniel8127 (276) 10/7/2011 7:46:01 PM

On 10/5/2011 10:03 AM, Daniel Carrera wrote:
> Hello,
>
> I'm making an N-body simulation with one star and many (e.g. 10^6) test
> particles. I think it would be nice if I could make a movie / animation
> of the entire simulation and I was wondering if anyone knows of a
> Fortran plotting library or other tool that could do this.
>
>
> The only idea I have so far is to use Gnuplot, which can produce GIF
> animations. But GIF animations are not idea, and Gnuplot is fairly slow
> at making the animations. I don't know if it could reasonably handle an
> animation with 10^6 points. This is not the sort of thing that Gnuplot
> was designed for. Can anyone offer an alternative idea?
>
> Cheers,
> Daniel.

The Milkyway@Home BOINC project is already doing N-body simulations,
and some on-line videos of the results.

http://milkyway.cs.rpi.edu/milkyway/

You may want to contact them about what software they're using, and
whether it happens to be in Fortran.

Their simulations are about smaller galaxies being scattered into
streams of stars as they orbit about the Milky Way galaxy, though.

Robert Miles
0
Reply milesrf (101) 10/8/2011 4:57:01 AM

You can also use ffmpeg to turn png files (and possibly others) into an 
mpeg4 (and possibly other formats) movie. I've used this with gnuplot 
with great success.

If you are a python fan/man you can also have a look at h5py+hdf5 
(similar to netcdf, but better and more convenient imho) as well as 
matplotlib. Not sure what will happen if you plot 10^6 points, but I can 
tell you that vector graphics output (eps, pdf) will be horribly slow if 
you go that route.

Cheers
Paul

On 06.10.11 09:35, Daniel Carrera wrote:
> Thanks for the suggestion. It's a good idea. I could make individual
> images with either PLplot or Gnuplot and combine them with ImageMagick.
>
> Cheers,
> Daniel.
>
> On 10/06/2011 09:12 AM, arjenmarkus wrote:
>> Hi,
>>
>> not sure if it is up to the task - I have never used it on that amount
>> of data, but you might want to have a look at PLplot -
>> http://plplot.sf.net (or any one of the many plot libraries that are
>> around).
>>
>> If rendering the data time frame by time frame is not fast enough,
>> then I would say:
>> - Prepare the time frames and store them as picture files
>> - Use a tool like ImageMagick to turn the stack of picture files into
>> a convenient animation file (there are many free tools around other
>> than ImageMagick, depending on your platform)
>>
>> Regards,
>>
>> Arjen
>>
>> On 2011-10-05 17:03, Daniel Carrera wrote:
>>> Hello,
>>>
>>> I'm making an N-body simulation with one star and many (e.g. 10^6)
>>> test particles. I think it would be nice if I could make a movie /
>>> animation of the entire simulation and I was wondering if anyone knows
>>> of a Fortran plotting library or other tool that could do this.
>>>
>>>
>>> The only idea I have so far is to use Gnuplot, which can produce GIF
>>> animations. But GIF animations are not idea, and Gnuplot is fairly
>>> slow at making the animations. I don't know if it could reasonably
>>> handle an animation with 10^6 points. This is not the sort of thing
>>> that Gnuplot was designed for. Can anyone offer an alternative idea?
>>>
>>> Cheers,
>>> Daniel.
>


0
Reply paul.anton.letnes1 (77) 10/13/2011 5:57:00 PM

14 Replies
136 Views

(page loaded in 0.141 seconds)

Similiar Articles:





7/20/2012 12:08:01 PM


Reply: