7.9 Data information

There are a set of functions for obtaining data properties in MGL language. However most of them can be found using "suffixes". Suffix can get some numerical value of the data array (like its size, maximal or minimal value, the sum of elements and so on) as number. Later it can be used as usual number in command arguments. The suffixes start from point ‘.’ right after (without spaces) variable name or its sub-array. For example, a.nx give the x-size of data a, b(1).max give maximal value of second row of variable b, (c(:,0)^2).sum give the sum of squares of elements in the first column of c and so on.

MGL command: info dat
Method on mglDataA: const char * PrintInfo () const
Method on mglDataA: void PrintInfo (FILE *fp) const
C function only: const char * mgl_data_info (HCDT dat)
Fortran subroutine: mgl_data_info (long dat, char *out, int len)

Gets or prints to file fp or as message (in MGL) information about the data (sizes, maximum/minimum, momentums and so on).

MGL command: info 'txt'

Prints string txt as message.

MGL command: info val

Prints value of number val as message.

MGL command: print dat
MGL command: print 'txt'
MGL command: print val

The same as info but immediately print to stdout.

MGL command: echo dat

Prints all values of the data array dat as message.

MGL command: progress val max
Method on mglGraph: void Progress (int val, int max)
C function: void mgl_progress (int val, int max)

Display progress of something as filled horizontal bar with relative length val/max. Note, it work now only in console and in FLTK-based applications, including mgllab and mglview.

MGL suffix: (dat) .nx
MGL suffix: (dat) .ny
MGL suffix: (dat) .nz
Method on mglDataA: long GetNx ()
Method on mglDataA: long GetNy ()
Method on mglDataA: long GetNz ()
C function: long mgl_data_get_nx (HCDT dat)
C function: long mgl_data_get_ny (HCDT dat)
C function: long mgl_data_get_nz (HCDT dat)

Gets the x-, y-, z-size of the data.

MGL suffix: (dat) .max
Method on mglDataA: mreal Maximal () const
C function: mreal mgl_data_max (HCDT dat)

Gets maximal value of the data.

MGL suffix: (dat) .min
Method on mglDataA: mreal Minimal () const
C function: mreal mgl_data_min (HMDT dat) const

Gets minimal value of the data.

Method on mglDataA: mreal Minimal (int &i, int &j, int &k) const
C function: mreal mgl_data_min_int (HCDT dat, int *i, int *j, int *k)

Gets position of minimum to variables i, j, k and returns the minimal value.

Method on mglDataA: mreal Maximal (int &i, int &j, int &k) const
C function: mreal mgl_data_max_int (HCDT dat, int *i, int *j, int *k)

Gets position of maximum to variables i, j, k and returns the maximal value.

Method on mglDataA: mreal Minimal (mreal &x, mreal &y, mreal &z) const
C function: mreal mgl_data_min_real (HCDT dat, mreal *x, mreal *y, mreal *z)

Gets approximated (interpolated) position of minimum to variables x, y, z and returns the minimal value.

MGL suffix: (dat) .mx
MGL suffix: (dat) .my
MGL suffix: (dat) .mz
Method on mglDataA: mreal Maximal (mreal &x, mreal &y, mreal &z) const
C function: mreal mgl_data_max_real (HCDT dat, mreal *x, mreal *y, mreal *z)

Gets approximated (interpolated) position of maximum to variables x, y, z and returns the maximal value.

MGL suffix: (dat) .mxf
MGL suffix: (dat) .myf
MGL suffix: (dat) .mzf
MGL suffix: (dat) .mxl
MGL suffix: (dat) .myl
MGL suffix: (dat) .mzl
Method on mglDataA: long Maximal (char dir, long from) const
Method on mglDataA: long Maximal (char dir, long from, long &p1, long &p2) const
C function: mreal mgl_data_max_firstl (HCDT dat, char dir, long from, long *p1, long *p2)

Get first starting from give position (or last one if from<0) maximum along direction dir, and save its orthogonal coordinates in p1, p2.

MGL suffix: (dat) .sum
MGL suffix: (dat) .ax
MGL suffix: (dat) .ay
MGL suffix: (dat) .az
MGL suffix: (dat) .aa
MGL suffix: (dat) .wx
MGL suffix: (dat) .wy
MGL suffix: (dat) .wz
MGL suffix: (dat) .wa
MGL suffix: (dat) .sx
MGL suffix: (dat) .sy
MGL suffix: (dat) .sz
MGL suffix: (dat) .sa
MGL suffix: (dat) .kx
MGL suffix: (dat) .ky
MGL suffix: (dat) .kz
MGL suffix: (dat) .ka
Method on mglDataA: mreal Momentum (char dir, mreal &a, mreal &w) const
Method on mglDataA: mreal Momentum (char dir, mreal &m, mreal &w, mreal &s, mreal &k) const
C function: mreal mgl_data_momentum_val (HCDT dat, char dir, mreal *a, mreal *w, mreal *s, mreal *k)

Gets zero-momentum (energy, I=\sum dat_i) and write first momentum (median, a = \sum \xi_i dat_i/I), second momentum (width, w^2 = \sum (\xi_i-a)^2 dat_i/I), third momentum (skewness, s = \sum (\xi_i-a)^3 dat_i/ I w^3) and fourth momentum (kurtosis, k = \sum (\xi_i-a)^4 dat_i / 3 I w^4) to variables. Here \xi is corresponding coordinate if dir is ‘'x'’, ‘'y'’ or ‘'z'’. Otherwise median is a = \sum dat_i/N, width is w^2 = \sum (dat_i-a)^2/N and so on.

MGL suffix: (dat) .fst
Method on mglDataA: mreal Find (const char *cond, int &i, int &j, int &k) const
C function: mreal mgl_data_first (HCDT dat, const char *cond, int *i, int *j, int *k)

Find position (after specified in i, j, k) of first nonzero value of formula cond. Function return the data value at found position.

MGL suffix: (dat) .lst
Method on mglDataA: mreal Last (const char *cond, int &i, int &j, int &k) const
C function: mreal mgl_data_last (HCDT dat, const char *cond, int *i, int *j, int *k)

Find position (before specified in i, j, k) of last nonzero value of formula cond. Function return the data value at found position.

Method on mglDataA: int Find (const char *cond, char dir, int i=0, int j=0, int k=0) const
C function: mreal mgl_data_find (HCDT dat, const char *cond, int i, int j, int k)

Return position of first in direction dir nonzero value of formula cond. The search is started from point {i,j,k}.

Method on mglDataA: bool FindAny (const char *cond) const
C function: mreal mgl_data_find_any (HCDT dat, const char *cond)

Determines if any nonzero value of formula in the data array.

MGL suffix: (dat) .a

Give first (for .a, i.e. dat->a[0]).