NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.
To learn about what's going on, see About the Archive Site.
I would like to know more about algorithm development with VisAD. For general users who want to develop algorithms to process data, is there a way in VisAD to let the user 1) compose an algorithm of arbitrary complexity, 2) plug it into perhaps a subclass of FlatField WITHOUT having to modify the said FlatField subclass source code and recompiling, and 3) run evaluate() on a given domain set with the efficiency that is largely limited to the efficiency of the code of the algorithm. What is asked for is perhaps an algorithm object that is more detached from the actual data, that can be developed and fiddled with by the user, that could have parameters (i.e. number of data point in a boxcar smoothing algorithm), but can be applied to data using a hosting FlatField. Of course the algorithm object has to be applicable to the data according to the domain and range in the FlatField. Currently FlatField, by implementing DataImpl, can do simple math such as sin() exp(). A user could use Jython to realize a certain type of complext algorithm using these methods. There are limits in developing algorithms this way. The efficiency in memory and speed can be a problem if the algorithm needs to do many primitive floating point operations, and can easily be impossible if the algorithm is more complex than doing the same math operation to all elements in the data sample (e.g. doing an transformation to an image). I could well have missed something obvious in the VisAD framework that allows rapid and flexible algorithm developement without losing efficiency during execution. But if there isn't anything close to the above requirements in VisAD, how to implement it? I guess an algorithm can be plugged into somewhere in the Funtion-> Field -> FlatField inheritance chain? I only use FlatField as example above. any thoughts? maohai huang __________________________________________________ Do you Yahoo!? Yahoo! Web Hosting - establish your business online http://webhosting.yahoo.com
visad
archives: