NCFLINT(1)

๐Ÿ’– NCFLINT(1) โ€” netCDF File Interpolator ๐Ÿ’–

okay bestie, welcome to NCFLINT, aka section 1 of the General Commands Manual, aka the netCDF File Interpolator, and honestly? she's giving math-girlie main character energy and I'm obsessed. ๐Ÿงฎโœจ


โœจ NAME โœจ

ncflint โ€” netCDF File Interpolator ๐Ÿฆ‹


โœจ SYNTAX โœจ

ncflint [-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] [--fix_rec_crd]
[-G gpe_dsc] [-g grp[,...]]  [--gaa att_name= att_val]] [--gad
att1[,...]]  [-H] [-h] [--hdf] [--hdr_pad sz_byt][--hpss_try] [-i
var,val3][-L dfl_lvl][-l path] [--msa] [-N] [--no_cll_msr]
[--no_frm_trm] [--no_tmp_fl] [-O] [-p path] [--qnt var1[, var2[,...]]=
prc]] [--qnt_alg alg_nm] [-R] [-r] [--ram_all] [-t thr_nbr] [--uio]
[--unn] [-v var[,...]]  [-w wgt[, wgt2]] [-X box] [-x] file1 file2 file3

And because I know you're a completionist, here's every single flag doing its little walk across the runway, in the exact order she serves them ๐Ÿ’…:

  • -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
  • --fix_rec_crd
  • -G gpe_dsc
  • -g grp[,...]
  • --gaa att_name= att_val
  • --gad att1[,...]
  • -H
  • -h
  • --hdf
  • --hdr_pad sz_byt
  • --hpss_try
  • -i var,val3
  • -L dfl_lvl
  • -l path
  • --msa
  • -N
  • --no_cll_msr
  • --no_frm_trm
  • --no_tmp_fl
  • -O
  • -p path
  • --qnt var1[, var2[,...]]= prc
  • --qnt_alg alg_nm
  • -R
  • -r
  • --ram_all
  • -t thr_nbr
  • --uio
  • --unn
  • -v var[,...]
  • -w wgt[, wgt2]
  • -X box
  • -x
  • and finally the trio of stars: file1 file2 file3 ๐ŸŒŸ

โœจ DESCRIPTION โœจ

So like, ncflint makes an output file that is a linear combination of the input files. That linear combination can be a weighted average, a normalized weighted average, or an interpolation of the input files. ๐Ÿ’ซ

Coordinate variables? Not acted upon, not in any case, no notes. They're just simply copied from file_1. Copy-paste queen behavior, honestly. ๐ŸŽ€

There are two conceptually distinct methods of using ncflint, and this is the part where I need you to lock in bestie:

๐Ÿ“ Method one: you bring the weights

The first method is to specify the weight each input file is to have in the output file. In this method, the value val3 of a variable in the output file file_3 is determined from its values val1 and val2 in the two input files according to:

wgt1*val1+wgt2*val2

Here at least wgt1, and, optionally, wgt2, are specified on the command line with the -w (or --weight or --wgt_var) switch. If only wgt1 is specified then wgt2 is automatically computed as wgt2=1-wgt1. โœจ

Note that weights larger than 1 are allowed. ๐Ÿ‘€ Thus it is possible to specify wgt1=2 and wgt2=-3. One can use this functionality to multiply all the values in a given file by a constant. Math is not scared of you, bestie, and neither are negative weights.

๐Ÿฆ‹ Method two: the interpolation option

The second method of using ncflint is to specify the interpolation option with -i (or with the --ntp or --interpolate long options). This is really the inverse of the first method, in the following sense. ๐Ÿซถ

When the user specifies the weights directly, ncflint has no work to do besides multiplying the input values by their respective weights and adding the results together to produce the output values. This assumes it is the weights that are known a priori. In another class of cases it is the "arrival value" (i.e., val3) of a particular variable var that is known a priori. In this case, the implied weights can always be inferred by examining the values of var in the input files. This results in one equation in two unknowns, wgt1 and wgt2:

val3=wgt1*val1+wgt2*val2.

Unique determination of the weights requires imposing the additional constraint of normalization on the weights:

wgt1+wgt2=1

Thus, to use the interpolation option, the user specifies var and val3 with the -i option. ncflint will compute wgt1 and wgt2, and use these weights on all variables to generate the output file. ๐ŸŒˆ

Although var may have any number of dimensions in the input files, it must represent a single, scalar value. Thus any dimensions associated with var must be "degenerate", i.e., of size one. (No dimension is out here being extra, periodt. ๐Ÿ’…)

๐ŸŒธ If you specify nothing

If neither -i nor -w is specified on the command line, ncflint defaults to weighting each input file equally in the output file. This is equivalent to specifying -w 0.5 or -w 0.5,0.5. โœจ

Attempting to specify both -i and -w methods in the same command is an error. Pick a lane, bestie, she will not do both. ๐Ÿ˜ญ

And one last lil hardcoded fact: ncflint is programmed not to interpolate variables of type NC_CHAR and NC_BYTE. This behavior is hardcoded. That's just how she is, no cap. ๐Ÿ’€


โœจ AUTHOR โœจ

NCO manual pages written by Charlie Zender and originally formatted by Brian Mays. ๐Ÿ‘‘ Absolute legends.


โœจ REPORTING BUGS โœจ

Report bugs to <http://sf.net/bugs/?group_id=3331>. ๐Ÿ› (Not me manifesting a bug-free run for you, but if it happens, she wants to hear about it fr fr.)


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:

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. ๐Ÿงš

And the whole bestie roster, the whole friend group, the whole squad:

ncap2(1), ncatted(1), ncbo(1), ncclimo(1), nces(1), ncecat(1), ncflint(1), ncz2psx(1), ncks(1), nco(1), ncpdq(1), ncra(1), ncrcat(1), ncremap(1), ncrename(1), ncwa(1) ๐Ÿ’œ


โœจ HOMEPAGE โœจ

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


okay that's the whole page, and that's the whole vibe ๐ŸŽ€ this is NCFLINT(1) from the General Commands Manual, and I'm signing off like the footer does โ€” same name, top and bottom, cute little matching set, no date stamp, just vibes. go interpolate something gorgeous bestie, you got this ๐Ÿ’…โœจ๐ŸŒˆ