Category "News"

ITT VIS will be having a [user group meeting at AGU]( again this year. From the invite:

> Share your feedback with the IDL team and
> 1. Learn about the updates included in the IDL 8.0.1 release
> 2. See examples using the new features in IDL 8.0 and IDL 8.0.1
> 3. Hear how ITT VIS is addressing key feedback on IDL 8.0
> 4. Learn about what’s coming in IDL 8.1

It's Wed Dec 15, 5-7 pm at the Marriott Marquis. I'll have another post about AGU activities later, but I'll definitely be at the user group meeting.

ITT VIS released the IDL 8.0.1 patch this afternoon. From the press release:

> A patch release, IDL 8.0.1, is now available. This is a planned
> release to follow up the major changes that were introduced in IDL 8.
> It contains over 100 bug fixes plus 5 new features:
> 1. arrow function,
> 2. MAPGRID BOX_AXES property,
> 3. Multiple IDL graphics can now be saved to a single PDF file,
> 4. New graphics and object graphics now allow for thicknesses < 1.0 (0 is a thin hairline), > 5. WRITE_PNG now allows the horizontal or vertical resolution to be specified

For installation instructions, see [Bill Okubo's post to comp.lang.idl-pvwave](

[Presentations]( from VISualize 2010 are now on the ITT VIS website. (The PDF file for Paulo Penteado's presentation looks corrupted to me, but you can download a good version from [here](

Overall, I thought that the talks were great and I learned something interesting and/or useful from each one. I'm particularly excited about the code for producing perceptually uniform color maps that Paulo Penteado promised to release. It is also great to learn a few [new facts about IDL 8.0]( at each ITT VIS presentation.

Here are my [slides]( on the "GPULib with IDL 8.0" talk I gave yesterday at VISualize 2010. They are very similar to the [slides]( for the talk I gave a few months ago at the IDL User Group Meeting in Boulder. More to come on other talks...

[VISualize 2010]( is coming up on May 19-20. The [agenda]( has been set, but there is still time to [register]( I will be speaking on [GPULib]( in IDL 8.0 again.

After the IDL 8.0 overview at the IDL User Group meeting last week, Bill Okubo also asked for a list of features IDL users needed. I think I have all the ideas people gave (along with some pertinent links to proof-of-concept ideas and background material):

1. better map projections
2. geo-browser export (i.e., to Google Earth, etc.) ([exporting from ENVI](, [discussion of doing it in IDL](
3. stereo display ([simple anaglyph system](, I also have code for using Alioscopy's autostereoscopic monitors from IDL object graphics which I have not published yet)
4. a better widget system ([a way to make IDL bindings for Qt?](
5. easier runtime distribution ([`MAKE_RT` über-installation](
6. better handling of large data sets
7. better support for databases
8. integration of GPU and parallel processing (Tech-X does both [GPU]( and [parallel processing]( in IDL)
9. OPeNDAP support ([I have something coming soon for this!](
10. easier interface to gridding data
11. ability to read Matlab ".sav" file
12. better volume rendering

Thoughts? Did we miss something crucial?

*Full disclosure: I work for Tech-X Corporation and have worked on GPULib, FastDL, and the Remote Data Toolkit.*

ITT VIS had several presentations about IDL 8.0 at this week's IDL User Group Meeting. David Fanning [says](
> Just one word: Wow!
> It appears that the promise of IDL 5 has finally been realized. :-)

David also [posted a longer description of the new features](, so I won't go through the laundry list (but I do intend to run through it with some examples when 8.0 is actually released, like I did for 7.1).

But I will discuss a bit the one feature that I have used extensively: operator overloading. This was the main focus of [my talk]( about [GPULib]( with IDL 8.0. The gist is that GPULib variables will be objects and if you are running IDL 8.0+, you can do things like the following:

IDL> a = gpuFindgen(10)
IDL> b = gpuFindgen(10)
IDL> c = a + b

This was easy to implement, just inherit from `IDL_Object` and write a method with the special name `_overloadPlus`:

function gpuvariable::_overloadPlus, left, right
compile_opt strictarr

return, gpuAdd(left, right)

Most operators are supported like `+`, `-`, `/`, `*`, `MOD`, `EQ`, etc., but also including brackets (both on the left side and right side of an assignment) and other special methods used by `PRINT`, `HELP`, and `SIZE`. The dot operator is automatically connected to the `getProperty` and `setProperty` methods of the class.

Another nice point is that GPULib will not require separate versions for pre-8.0 and post-8.0 versions of IDL. Just write a simple dummy `IDL_Object` class. This will allow the code to be compiled in versions of IDL before 8.0 and won't be found (because the real `IDL_Object` is part of IDL's core and found before any user routines) in versions 8.0+. Of course, only the old procedure or function interfaces are available in versions before 8.0. I'm much more likely to use operator overloading because I can provide extra features for IDL 8.0 users and fall back to a more verbose interface for those who have not upgraded yet.

If you have the tech preview handed out at the meeting or are just interested in some more examples of this, check out these [HDF5 classes]( which make use of operator overloading. The end of the `` file has a main-level program which shows how to use the classes:

IDL> .run mg_h5

*Full disclosure: I work for Tech-X Corporation and have worked on the IDL bindings for GPULib.*

Here are the [slides]( for my "GPULib with IDL 8.0" presentation from the IDL User Group Meeting.

More thoughts about the meeting to come...

[VISualize 2010]( will be May 19-20 (the first day is for IDL and the second for ENVI) at the World Wildlife Fund in Washington, DC:

> This event is designed to bring together IDL and ENVI users to provide opportunities for networking, sharing ideas, and working on strategies that advance our scientific data analysis and visualization community. We hope you will join us for one or two full days of presentations from professionals in a variety of industries who use visualization technologies for a wide range of applications.

ITT VIS is now accepting abstracts for talks. Pre-registration is required to attend and there is a $40 per day fee.

ITT VIS announced the [3rd Annual IDL User Group Meeting]( scheduled for February 24 (with hands-on seminars on February 23) in Boulder, CO at LASP. Topics include:

1. Atmospheric and Cryospheric Analyses
2. Climate Modeling
3. General Physics and Mathematics
4. Graphics and Visualization
5. GPU Processing
6. Cluster Processing
7. Graphics Enhancements with IDL
8. New Functionality in the IDL Core Language

The Tuesday hands-on seminar schedule is:

9:00–11:30 Introduction to Scientific Programming with IDL
11:30– 1:00 Lunch Provided by ITT
1:00– 3:30 IDL 8.0 Tech Preview
3:45- 5:00 IDL Roundtable

I will be there for both days and Tech-X should be talking about GPULib.

[Register]( soon, as space is limited!

« newer postsolder posts »