Home
Manual
Packages
Global Index
Keywords
Quick Reference

functions in std.i  m
mac_primitives

mac_primitives, file
sets FILE primitive data types to be native to MacIntosh, 8 byte double.
interpreted function, defined at i0/std.i line 2144

macl_primitives

macl_primitives, file
sets FILE primitive data types to be native to MacIntosh, long double.
interpreted function, defined at i0/std.i line 2152

max

max(x)
or max(x, y, z, ...)
returns the scalar maximum value of its array argument, or, if
more than one argument is supplied, returns an array of the
maximum value for each array element among the several arguments.
In the multiargument case, the arguments must be conformable.
builtin function, documented at i0/std.i line 764

SEE ALSO:

min,
sum,
avg

median

median(x)
or median(x, which)
returns the median of the array X. The search for the median takes
place along the dimension of X specified by WHICH. WHICH defaults
to 1, meaning the first index of X. The median function returns an
array with one fewer dimension than its argument X (the WHICH
dimension of X is missing in the result), in exact analogy with
rank reducing index range functions. If dimsof(X)(WHICH) is
odd, the result will have the same data type as X; if even, the
result will be a float or a double, since the median is defined
as the arithmetic mean between the two central values in that
case.
interpreted function, defined at i0/std.i line 1152

SEE ALSO:

sort

merge

merge(true_expr, false_expr, condition)
returns the values TRUE_EXPR or FALSE_EXPR where CONDITION is
nonzero or zero, respectively. The result has the data type of
TRUE_EXPR or FALSE_EXPR, promoted to the higher arithmetic type
if necessary. The result has the dimensions of CONDITION.
The number of elements in TRUE_EXPR must match the number of
nonzero elements of CONDITION, and the number of elements in
FALSE_EXPR must match the number of zero elements of CONDITION.
(TRUE_EXPR or FALSE_EXPR should be nil if there are no such
elements of CONDITION. Normally, TRUE_EXPR and FALSE_EXPR should
be 1D arrays if they are not nil.)
This function is intended for vectorizing a function whose
domain is divided into two or more parts, as in:
func f(x) {
big= (x>=threshhold);
wb= where(big);
ws= where(!big);
if (is_array(wb)) {
xx= x(wb);
fb=
}
if (is_array(ws)) {
xx= x(ws);
fs=
}
return merge(fb, fs, big);
}
builtin function, documented at i0/std.i line 846

SEE ALSO:

mergef,
merge2,
where

merge2

merge2(true_expr, false_expr, condition)
returns the values TRUE_EXPR or FALSE_EXPR where CONDITION is
nonzero or zero, respectively. The result has the data type of
TRUE_EXPR or FALSE_EXPR, promoted to the higher arithmetic type
if necessary. Unlike the merge function, TRUE_EXPR and FALSE_EXPR
must be conformable with each other, and with the CONDITION.
interpreted function, defined at i0/std.i line 877

SEE ALSO:

merge,
where,
mergef

mergef

y = mergef(x, f1, cond1, f2, cond2, ... felse)
Evaluate F1(X(where(COND1))), F2(X(where(COND2))),
and so on, until FELSE(X(where(!(COND1  COND2  ...))))
and merge all the results back into an array Y with the
same dimensions as X. Each of the CONDi must have the
same dimensions as X, and they must be mutally exclusive.
During the evaluation of Fi, note that all of the local
variables of the caller of mergef are available. The
Fi are invoked as Fi(X(mergel)) and the variable mergel
= where(CONDi) is available to the Fi, in case they need
to extract any additional parameters. If noneof(CONDi)
then Fi will not be called at all, otherwise, the Fi are
invoked in order. The return value of Fi must have the same
shape as its argument (which will be a 1D array or scalar).
Use mergeg to construct secondary results the same shape
as X and Y.
interpreted function, defined at i0/std.i line 899

SEE ALSO:

mergeg,
merge

mergeg

z = mergeg(z, value)
or z = mergeg(z)
If secondary results are to be returned from a mergef, besides
its return value, the Fi may construct them using the second
form of mergef:
z = mergeg(z, value)
where z is a variable in the original caller of mergef,
and value is its value where(CONDi). Note that the variable
name of the first parameter must be the same as the variable
name it is assigned to in this construction  that variable
is being used to hold the state of z as it is built. After
the outer mergef returns, the caller needs to invoke
z = mergeg(z)
one final time to complete each secondary return value.
z = [];
y = mergef(x, f1, cond, f2);
z = mergeg(z);
...
func f1(x) {
z = mergeg(z, exprz(x));
return expry(x);
}
func f2(x) {
z = mergeg(z, exprz(x));
return expry(x);
}
interpreted function, defined at i0/std.i line 945

SEE ALSO:

mergef,
merge

min

min(x)
or min(x, y, z, ...)
returns the scalar minimum value of its array argument, or, if
more than one argument is supplied, returns an array of the
minimum value for each array element among the several arguments.
In the multiargument case, the arguments must be conformable.
builtin function, documented at i0/std.i line 754

SEE ALSO:

max,
sum,
avg

mkdir

mkdir, directory_name
rmdir, directory_name
Create DIRECTORY_NAME with mkdir, or remove it with rmdir.
The rmdir function only works if the directory is empty.
builtin function, documented at i0/std.i line 1703

SEE ALSO:

cd,
lsdir,
get_cwd,
get_home

