Hi, Ed, On Apr 19, 2010, at 13:47 , Ed Zaron wrote:
> it involves wrapping the phases locally for the corners of each > grid cell. In addition to the already mentioned possibility of creating a "wrapped phase" copy of your data array, another alternative you might want to consider is using the "plfcont" routine rather than c_plcont (aka plcont). The "plf" variants of 2d data functions are passed data via a pointer to the data and a pointer to either an evaluator function or (for "new style" plf functions) a structure of pointers to a set of operator functions. For each point, the 2d data function will access the user data via the evaluator function (which is passed the user data pointer). If you could create an "evaluator" function that performed the local phase wrap for each point "on-the-fly", I think you'd be able to do what you want with the existing plplot API without having to create a "wrapped phase" (or even "unwrapped phase") copy of your data. My guess is that whatever you added to plcont's internals could be refactored into a suitable evaluator function. If you look at the implementation of c_plcont, you'll see that it simply calls plfcont "with a particular choice for f2eval and f2eval_data". In your case, f2eval_data would be a pointer to your data and f2eval would be replaced with your "local phase wrap evaluator function". Hope this helps, Dave ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel