# Re: [ferret_users] arithmetics not working on a variable (broken netCDF file?)

```Ansley,

| problem here is the *value *of the modulo attribute on your x
| axis. The modulo length is the length of the modulo repeat. For a
| longitude axis the modulo length is always 360 degrees, the length of
| the wraparound of degrees around the earrth.  So this attribute should
| always be either
|
|                lont:modulo = " " ;
| or
|                lont:modulo = 360 ;

That's news to me!  And I don't think that's right.  Consider the
domain of a numerical model that extends from lon=0 to lon=180.
When modulo = 360, I expect that the model field is missing
for 180 <= lon <= 360, 540 <= lon <= 720, and so on.
But, when modulo = 180, I expect that the model field is defined
for any lon.

I think this is the PURPOSE of the modulo attribute, that is,
to allow for an arbitrary cyclic-domain size.  In addition, Ferret
itself agrees with me! that is, it does exactly what I have
described.  I have an netCDF file in which

float lonv(lonv) ;
lonv:units = "degrees_east" ;
lonv:axis = "X" ;
lonv:missing_value = -9.99e+33f ;
lonv:modulo = 100. ;

And Ferret does plot the field for whatever domain:

fill/k=1/l=1/x=-180:180 u

without any gap.

| Ferret will not draw a shade plot of data on a 1-point by n-point
| region

Hmm, I can see that FILL cannot work if the domain isn't cyclic.
But, I guess that SHADE can work whether the domain is cyclic or
not because it just paints gridcells without interpolation.

Ryo

```

• Follow-Ups:
• References: