Unidata - To provide the data services, tools, and cyberinfrastructure leadership that advance Earth system science, enhance educational opportunities, and broaden participation. Unidata
         
  advanced  
 

Re: DataImpl Arithmetic

Hi Kevin,

You cannot do arithmetic with Sets, as they are assumed to
play the role of function domains and arithmetic operations
apply to function ranges or simple Reals or Tuples.

You can apply binary operations to Data objects with the
same type, to a Data object other than a Set and a constant,
and to a function object and a Data object whose type is the
same as the function range type. And you can apply the binary
operation of addition (and only addition) to two Text objects.

Note that in this context when we say types are equal, we
mean in the sense that any two RealTypes are equal.

Good luck,
Bill

> What are the rules regarding arithmetic with DataImpls?  Do they need to
> be of the same type?
>
> I.e., can I only do FlatField ff = (FlatField) old_ff.multiply(other_ff)
>
> I'm having some trouble creating (essentially scaling) a set by a constant.
>
> I'm trying the following:
>
> Linear1DSet alt_set = new Linear1DSet(altitude,
>                                           alt_map.getRange()[0],
>                                           alt_map.getRange()[1],
>                                           100);
>
> Linear1DSet refr_set = (Linear1DSet)alt_set.multiply( new
> Real((4.0/3.0)*CURVE) );
>
> And I get a runtime error at the above line that reads:
>
> Exception in thread "main" visad.UnimplementedException: SetType.binary
>
> Thanks for your help with this trivial problem!

==============================================================================
To unsubscribe visad, visit:
http://www.unidata.ucar.edu/mailing-list-delete-form.html
==============================================================================


 
 
  Contact Us     Site Map     Search     Terms and Conditions     Privacy Policy     Participation Policy
 
National Science Foundation (NSF) UCAR Community Programs   Unidata is a member of the UCAR Community Programs, is managed by the University Corporation for Atmospheric Research, and is sponsored by the National Science Foundation.
P.O. Box 3000     Boulder, CO 80307-3000 USA     Tel: 303-497-8643     Fax: 303-497-8690