Provided by: nco_5.2.1-1build2_amd64 bug

NAME

       ncbo - netCDF Binary Operator

SYNTAX

       ncbo  [-3]  [-4]  [-5] [-6] [-7] [-A] [--bfr sz_byt][-C][-c] [--cmp cmp_sng] [--cnk_byt sz_byt][--cnk_csh
       sz_byt][--cnk_dmn nm,sz_lmn] [--cnk_map map] [--cnk_min sz_byt]  [--cnk_plc  plc]  [--cnk_scl  sz_lmn][-D
       dbg_lvl]  [-d  dim,[  min][,[  max]]]  [-F]  [--fl_fmt=fmt] [-G gpe_dsc] [-g grp[,...]]  [--glb att_name=
       att_val]] [-H] [-h] [--hdf] [--hdr_pad sz_byt][--hpss_try] [-L dfl_lvl] [-l path] [--msa]  [--no_cll_msr]
       [--no_frm_trm]  [--no_tmp_fl]  [-O]  [-p  path]  [-R]  [-r]  [--ram_all] [-t thr_nbr] [--uio] [--unn] [-v
       var[,...]]  [-X box] [-x] file_1 file_2 file_3

DESCRIPTION

       ncbo subtracts variables in file_2 from the corresponding variables (those with the same name) in  file_1
       and  stores  the  results  in  file_3.  Variables in file_2 are broadcast to conform to the corresponding
       variable in file_1 if necessary.  Broadcasting a variable means creating data in non-existing  dimensions
       from  the  data  in  existing  dimensions.   For  example,  a  two  dimensional variable in file_2 can be
       subtracted from a four, three, or two (but not one or zero) dimensional variable (of the  same  name)  in
       file_1.   This  functionality allows the user to compute anomalies from the mean.  Note that variables in
       file_1 are not broadcast to conform to the dimensions in file_2.  Thus, ncbo, the number  of  dimensions,
       or  rank,  of  any  processed  variable  in  file_1 must be greater than or equal to the rank of the same
       variable in file_2.  Furthermore, the size of all dimensions common to both file_1  and  file_2  must  be
       equal.

       When  computing  anomalies  from  the  mean  it  is often the case that file_2 was created by applying an
       averaging operator to a file with the same dimensions as file_1, if not file_1 itself.  In  these  cases,
       creating  file_2  with ncra rather than ncwa will cause the ncbo operation to fail.  For concreteness say
       the record dimension in file_1 is time.  If file_2  were  created  by  averaging  file_1  over  the  time
       dimension  with  the  ncra  operator  rather  than  with  the ncwa operator, then file_2 will have a time
       dimension of size 1 rather than having no time dimension at all In this case the  input  files  to  ncbo,
       file_1  and file_2, will have unequally sized time dimensions which causes ncbo to fail.  To prevent this
       from occurring, use ncwa to remove the time dimension from file_2.  An example is given below.

       ncbo will never difference coordinate variables or variables of type NC_CHAR or  NC_BYTE.   This  ensures
       that  coordinates  like  (e.g.,  latitude  and  longitude)  are physically meaningful in the output file,
       file_3.  This behavior is hardcoded.  ncbo applies special rules to some NCAR  CSM  fields  (e.g.,  ORO).
       See  NCAR CSM Conventions for a complete description.  Finally, we note that ncflint (ncflint netCDF File
       Interpolator)  can  be  also  perform  file  subtraction  (as  well  as  addition,   multiplication   and
       interpolation).

EXAMPLES

       Say  files  85_0112.nc  and 86_0112.nc each contain 12 months of data.  Compute the change in the monthly
       averages from 1985 to 1986:
              ncbo 86_0112.nc 85_0112.nc 86m85_0112.nc

       The following examples demonstrate the broadcasting feature of ncbo.  Say we wish to compute the  monthly
       anomalies of T from the yearly average of T for the year 1985.  First we create the 1985 average from the
       monthly data, which is stored with the record dimension time.
              ncra 85_0112.nc 85.nc
              ncwa -O -a time 85.nc 85.nc
       The  second command, ncwa, gets rid of the time dimension of size 1 that ncra left in 85.nc.  Now none of
       the variables in 85.nc has a time dimension.  A quicker way to accomplish this is to use  ncwa  from  the
       beginning:
              ncwa -a time 85_0112.nc 85.nc
       We are now ready to use ncbo to compute the anomalies for 1985:
              ncbo -v T 85_0112.nc 85.nc t_anm_85_0112.nc
       Each  of  the 12 records in t_anm_85_0112.nc now contains the monthly deviation of T from the annual mean
       of T for each gridpoint.

       Say we wish to compute the monthly gridpoint anomalies from the zonal annual mean.  A  zonal  mean  is  a
       quantity  that  has  been  averaged over the longitudinal (or x) direction.  First we use ncwa to average
       over longitudinal direction lon, creating xavg_85.nc, the zonal mean of  85.nc.   Then  we  use  ncbo  to
       subtract the zonal annual means from the monthly gridpoint data:
              ncwa -a lon 85.nc xavg_85.nc
              ncbo 85_0112.nc xavg_85.nc tx_anm_85_0112.nc
       Assuming 85_0112.nc has dimensions time and lon, this example only works if xavg_85.nc has no time or lon
       dimension.

       As  a  final example, say we have five years of monthly data (i.e., 60 months) stored in 8501_8912.nc and
       we wish to create a file which contains the twelve month seasonal cycle of the  average  monthly  anomaly
       from  the  five-year  mean of this data.  The following method is just one permutation of many which will
       accomplish the same result.  First use ncwa to create the file containing the five-year mean:
              ncwa -a time 8501_8912.nc 8589.nc
       Next use ncbo to create a file containing the difference of each month's data from the five-year mean:
              ncbo 8501_8912.nc 8589.nc t_anm_8501_8912.nc
       Now use ncks to group the five January anomalies together in one file, and use ncra to create the average
       anomaly for all five Januarys.  These commands are embedded in a shell loop so they are repeated for  all
       twelve months:
              foreach idx (01 02 03 04 05 06 07 08 09 10 11 12)
              ncks -F -d time,,,12 t_anm_8501_8912.nc foo.
              ncra foo. t_anm_8589_.nc
              end
       Note  that  ncra understands the stride argument so the two commands inside the loop may be combined into
       the single command
              ncra -F -d time,,,12 t_anm_8501_8912.nc foo.
       Finally, use ncrcat to concatenate the 12 average monthly anomaly files into one twelve-record file which
       contains the entire seasonal cycle of the monthly anomalies:
              ncrcat t_anm_8589_??.nc t_anm_8589_0112.nc

AUTHOR

       NCO manual pages written by Charlie Zender and originally formatted by Brian Mays.

REPORTING BUGS

       Report bugs to <http://sf.net/bugs/?group_id=3331>.

COPYRIGHT

       Copyright © 1995-present Charlie Zender
       This is free software; see the source for copying  conditions.   There  is  NO  warranty;  not  even  for
       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

SEE ALSO

       The full documentation for NCO is maintained as a Texinfo manual called the NCO Users Guide.  Because NCO
       is  mathematical  in nature, the documentation includes TeX-intensive portions not viewable on character-
       based displays.  Hence the only complete and authoritative versions of the NCO Users Guide  are  the  PDF
       (recommended),  DVI, and Postscript versions at <http://nco.sf.net/nco.pdf>, <http://nco.sf.net/nco.dvi>,
       and   <http://nco.sf.net/nco.ps>,   respectively.    HTML   and   XML   versions   are    available    at
       <http://nco.sf.net/nco.html> and <http://nco.sf.net/nco.xml>, respectively.

       If the info and NCO programs are properly installed at your site, the command

              info nco

       should give you access to the complete manual, except for the TeX-intensive portions.

HOMEPAGE

       The NCO homepage at <http://nco.sf.net> contains more information.

                                                                                                         NCBO(1)