File:
[LON-CAPA] /
loncom /
html /
adm /
help /
tex /
all_functions_table.tex
Revision
1.3:
download - view:
text,
annotated -
select for diffs
Wed Feb 18 23:00:20 2004 UTC (20 years, 6 months ago) by
albertel
Branches:
MAIN
CVS tags:
version_1_2_X,
version_1_2_1,
version_1_2_0,
version_1_1_99_5,
version_1_1_99_4,
version_1_1_99_3,
version_1_1_99_2,
version_1_1_99_1,
version_1_1_99_0,
HEAD
- documenting the new optional target parameter to prettyprint/dollarformat
1: \label{all_functions_table}
2:
3: \begin{longtable}{|p{5cm}|p{6.5cm}|p{3.5cm}|p{2cm}|}
4: \hline
5: \textbf{CAPA Functions }
6: &\textbf{LON-CAPA }
7: &\textbf{Descriptions }
8: &\textbf{Differences (if any) }
9: \endhead
10: \hline
11: sin(x), cos(x), tan(x) &\&sin(\$x), \&cos(\$x), \&tan(\$x) &Trigonometric functions where x is in radians. \$x can be a pure number, i.e., you can call \&sin(3.1415) & \\
12: \hline
13: asin(x), acos(x), atan(x), atan2(y,x) &\&asin(\$x), \&acos(\$x), \&atan(\$x), \&atan2(\$y,\$x) &Inverse trigonometric functions. Return value is in radians. For asin and acos the value of x must be between -1 and 1. The atan2 returns a value between -pi and pi the sign of which is determined by y. \$x and \$y can be pure numbers & \\
14: \hline
15: log(x), log10(x) &\&log(\$x), \&log10(\$x) &Natural and base-10 logarithm. \$x can be a pure number & \\
16: \hline
17: exp(x), pow(x,y), sqrt(x) &\&exp(\$x), \&pow(\$x,\$y), \&sqrt(\$x) &Exponential, power and square root, i.e.,ex, xy and /x. \$x and \$y can be pure numbers & \\
18: \hline
19: abs(x), sgn(x) &\&abs(\$x), \&sgn(\$x) &Abs takes the absolute value of x while sgn(x) returns 1, 0 or -1 depending on the value of x. For x$>$0, sgn(x) = 1, for x=0, sgn(x) = 0 and for x$<$0, sgn(x) = -1. \$x can be a pure number & \\
20: \hline
21: erf(x), erfc(x) &\&erf(\$x), \&erfc(\$x) &Error function. erf = 2/sqrt(pi) integral (0,x) et-sq and \emph{ erfx(x)}
22: = 1.0 - \emph{erf(x)}
23: . \$x can be a pure number & \\
24: \hline
25: ceil(x), floor(x) &\&ceil(\$x), \&floor(\$x) &Ceil function returns an integer rounded up whereas floor function returns and integer rounded down. If x is an integer than it returns the value of the integer. \$x can be a pure number & \\
26: \hline
27: min(...), max(...) &\&min(...), \&max(...) &Returns the minimum/ maximum value of a list of arguments if the arguments are numbers. If the arguments are strings then it returns a string sorted according to the ASCII codes & \\
28: \hline
29: factorial(n) &\&factorial(\$n) &Argument (n) must be an integer else it will round down. The largest value for n is 170. \$n can be a pure number & \\
30: \hline
31: N\%M &\$N\%\$M &N and M are integers and returns the remainder (in integer) of N/M. \$N and \$M can be pure numbers & \\
32: \hline
33: sinh(x), cosh(x), tanh(x) &\&sinh(\$x), \&cosh(\$x), \&tanh(\$x) &Hyperbolic functions. \$x can be a pure number & \\
34: \hline
35: asinh(x), acosh(x), atanh(x) &\&asinh(\$x), \&acosh(\$x), \&atanh(\$x) &Inverse hyperbolic functions. \$x can be a pure number & \\
36: \hline
37: /DIS(\$x,''nn'') &\&format(\$x,'nn') &Display or format \$x as nn where nn is nF or nE and n is an integer. Also supports the first character being a \$, it thjen will format the result with a call to \&dollarformat() described below. & The difference is obvious. \\
38: \hline
39: Not in CAPA &\&prettyprint(\$x,'nn','optional target') &Display or format \$x as nn where nn is nF or nE and n is an integer. Also supports the first character being a \$, it then will format the result with a a call to \&dollarformat() described below. In E mode it will attempt to generate a pretty x10\^{}3 rather than a E3 following the number, the 'optional target' argument is optional but can be used to force \&prettyprint to generate either 'tex' output, or 'web' output, most people do not need to specify this argument and can leave it blank. & \\
40: \hline
41: Not in CAPA &\&dollarformat(\$x,'optional target') &Reformats \$x to have a \$ (or $\backslash$\$ if in tex mode) and to have , grouping thousands. The 'optional target' argument is optional but can be used to force \&prettyprint to generate either 'tex' output, or 'web' output, most people do not need to specify this argument and can leave it blank. & \\
42: \hline
43: roundto(x,n) &\&roundto(\$x,\$n) &Rounds a real number to n decimal points. \$x and \$n can be pure numbers & \\
44: \hline
45: web(``a'',''b'',''c'') or web(a,b,c) &\&web(``a'',''b'',''c'') or \&web(\$a,\$b,\$c) &Returns either a, b or c depending on the output medium. a is for plain ASCII, b for tex output and c for html output & \\
46: \hline
47: html(``a'') or html(a) &\&html(``a'') or \&html(\$a) &Output only if the output mode chosen is in html format & \\
48: \hline
49: jn(m,x) &\&j0(\$x), \&j1(\$x), \&jn(\$m,\$x), \&jv(\$y,\$x) &Bessel functions of the first kind with orders 0, 1 and m respectively. For jn(m,x), m must be an integer whereas for jv(y,x), y is real. \$x can be a pure number. \$m must be an integer and can be a pure integer number. \$y can be a pure real number &In CAPA, j0, j1 and jn are contained in one function, jn(m,x) where m takes the value of 0, 1 or 2. jv(y,x) is new to LON-CAPA. \\
50: \hline
51: yn(m,x) &\&y0(\$x), \&y1(\$x), \&yn(\$m,\$x), \&yv(\$y,\$x) &Bessel functions of the second kind with orders 0, 1 and m respectively. For yn(m,x), m must be an integer whereas for yv(y,x), y is real. \$x can be a pure number. \$m must be an integer and can be a pure integer number. \$y can be a pure real number &In CAPA, y0, y1 and yn are contained in one function, yn(m,x) where m takes the value of 0, 1 or 2. yv(y,x) is new to LON-CAPA. \\
52: \hline
53: random(l,u,d) &\&random(\$l,\$u,\$d) &Returns a uniformly distributed random number between the lower bound, l and upper bound, u in steps of d. \$l, \$u and \$d can be pure numbers &In CAPA, all the 3 arguments must be of the same type. However, now you can mix the type \\
54: \hline
55: choose(i,...) &\&choose(\$i,...) &Choose the ith item from the argument list. i must be an integer greater than 0 and the value of i should not exceed the number of items. \$i can be a pure integer & \\
56: \hline
57: /MAP(seed;w,x,y,z;a,b,c,d) &\parbox{6.49cm}{
58: Option 1 - \&map(\$seed,[$\backslash$\$w,$\backslash$\$x,$\backslash$\$y,$\backslash$\$z],[\$a,\$b,\$c,\$d]) or \\
59: Option 2 - \&map(\$seed,$\backslash$@mappedArray,[\$a,\$b,\$c,\$d]) \\
60: Option 3 - @mappedArray = \&map(\$seed,[\$a,\$b,\$c,\$d]) \\
61: Option 4 - (\$w,\$x,\$y,\$z) = \&map(\$seed,$\backslash$@a) \\
62: where \$a='A'\\
63: \$b='B'\\
64: \$c='B'\\
65: \$d='B'\\
66: \$w, \$x, \$y, and \$z are variables }&Assigns to the variables \$w, \$x, \$y and \$z the values of the \$a, \$b, \$c and \$c (A, B, C and D). The precise value for \$w .. depends on the seed. (Option 1 of calling map). In option 2, the values of \$a, \$b .. are mapped into the array, @mappedArray. The two options illustrate the different grouping. Options 3 and 4 give a consistent way (with other functions) of mapping the items. For each option, the group can be passed as an array, for example, [\$a,\$b,\$c,\$d] =$>$ $\backslash$@a. &In CAPA, the arguments are divided into three groups separated by a semicolon ;. In LON-CAPA, the separation is done by using [] brackets or using an array @a. Note the backslash ($\backslash$) before the arguments in the second and third groups. \\
67: \hline
68: rmap(seed;a,b,c,d;w,x,y,z) &\parbox{6.49cm}{Option 1 - \&rmap(\$seed,[$\backslash$\$w,$\backslash$\$x,$\backslash$\$y,$\backslash$\$z],[\$a,\$b,\$c,\$d]) or \\
69: Option 2 - \&rmap(\$seed,$\backslash$@rmappedArray,[\$a,\$b,\$c,\$d]) \\
70: Option 3 - @rmapped\_array = \&rmap(\$seed,[\$a,\$b,\$c,\$d]) \\
71: Option 4 - (\$w,\$x,\$y,\$z) = \&rmap(\$seed,$\backslash$@a) \\
72: where \$a='A'\\
73: \$b='B'\\
74: \$c='B'\\
75: \$d='B'\\
76: \$w, \$x, \$y, and \$z are variables } &The rmap functions does the reverse action of map if the same seed is used in calling map and rmap. &In CAPA, the arguments are divided into three groups separated by a semicolon ;. In LON-CAPA, the separation is done by using [] brackets (with create an unamed vector reference) or using an array @a. Note the backslash ($\backslash$) before the arguments in the second and third groups (Which cause Perl to send to variable locations rather than the variable values, similar to a C pointer). \\
77: \hline
78: NOT IMPLEMENTED IN CAPA &\$a=\&xmlparse(\$string) &Runs the internal parser over the argument parsing for display. \textbf{Warning}
79: This will result in different strings in different targets. Don't use the results of this function as an answer. &New to LON-CAPA \\
80: \hline
81: tex(a,b), tex(``a'',''b'') &\&tex(\$a,\$b), \&tex(``a'',''b'') &Returns a if the output mode is in tex otherwise returns b & \\
82: \hline
83: var\_in\_tex(a) &\&var\_in\_tex(\$a) &Equivalent to tex(``a'',''``) & \\
84: \hline
85: to\_string(x), to\_string(x,y) &\&to\_string(\$x), \&to\_string(\$x,\$y) &If x is an integer, returns a string. If x is real than the output is a string with format given by y. For example, if x = 12.3456, \&to\_string(x,''.3F'') = 12.345 and \&to\_string(x,''.3E'') = 1.234E+01. & \\
86: \hline
87: capa\_id(), class(), section(), set(), problem() &\&class(), \§ion() &Returns null string, class descriptive name, section number, set number and null string. &capa\_id(), set() and problem() are no longer used. Currently, they return a null value. \\
88: \hline
89: name(), student\_number() &\&name(), \&student\_number() &Return the full name in the following format: lastname, firstname initial. Student\_number returns the student 9-alphanumeric string. If undefined, the functions return null. & \\
90: \hline
91: open\_date(), due\_date(), answer\_date() &\&open\_date(), \&due\_date(), \&answer\_date() &Problem open date, due date and answer date. The time is also included in 24-hr format. &Output format for time is changed slightly. If pass noon, it displays ..pm else it displays ..am. So 23:59 is displayed as 11:59 pm. \\
92: \hline
93: get\_seed(), set\_seed() &Not implemented &Get and set the random seed. & \\
94: \hline
95: sub\_string(a,b,c) &\&sub\_string(\$a,\$b,\$c)
96: perl substr function. However, note the differences &Retrieve a portion of string a starting from b and length c. For example, \$a = ``Welcome to LON-CAPA''; \$result=\&sub\_string(\$a,4,4); then \$result is ``come'' &Perl intrinsic function, substr(string,b,c) starts counting from 0 (as opposed to 1). In the example to the left, substr(\$a,4,4) returns ``ome ``. \\
97: \hline
98: array[xx] &@arrayname
99: Array is intrinsic in perl. To access a specific element use \$arrayname[\$n] where \$n is the \$n+1 element since the array count starts from 0 &``xx'' can be a variable or a calculation. &In LON-CAPA, an array is defined by @arrayname. It is not necessary to specify the dimension of the array. \\
100: \hline
101: array\_moments(B,A) &@B=\&array\_moments(@A) &Evaluates the moments of an array A and place the result in array B[i] where i = 0 to 4. The contents of B are as follows: B[0] = number of elements, B[1] = mean, B[2] = variance, B[3] = skewness and B[4] = kurtosis. &In CAPA, the moments are passed as an array in the first argument whereas in LON-CAPA, the array containing the moments are set equal to the function. \\
102: \hline
103: array\_max(Name), array\_min(Name) &\&min(@Name), \&max(@Name) &In LON-CAPA to find the maximum value of an array, use \&max(@arrayname) and to find the minimum value of an array, use \&min(@arrayname) &Combined with the min and max functions defined earlier. \\
104: \hline
105: init\_array(Name) &undef @name &To destroy the contents of an array, use &Use perl intrinsic undef function. \\
106: \hline
107: random\_normal (return\_array,item\_cnt,seed,av,std\_dev) &@return\_array=\&random\_normal (\$item\_cnt,\$seed,\$av,\$std\_dev) &Generate \$item\_cnt deviates of normal distribution of average \$av and standard deviation \$std\_dev. The distribution is generated from seed \$seed &In CAPA the results are passed as the first argument whereas in LON-CAPA the results are set equal to the function. \\
108: \hline
109: random\_beta (return\_array,item\_cnt,seed,aa,bb) &@return\_array=\&random\_beta (\$item\_cnt,\$seed,\$aa,\$bb)
110: NOTE: Both \$aa and \$bb MUST be greater than 1.0E-37. &Generate \$item\_cnt deviates of beta distribution. The density of beta is: X\^{}(\$aa-1) *(1-X)\^{}(\$bb-1) /B(\$aa,\$bb) for 0$<$X$<$1. &In CAPA the results are passed as the first argument whereas in LON-CAPA the results are set equal to the function. \\
111: \hline
112: random\_gamma (return\_array,item\_cnt,seed,a,r) &@return\_array=\&random\_gamma (\$item\_cnt,\$seed,\$a,\$r)
113: NOTE: Both \$a and \$r MUST be positive. &Generate \$item\_cnt deviates of gamma distribution. The density of gamma is: (\$a**\$r)/gamma(\$r) * X**(\$r-1) * exp(-\$a*X). &In CAPA the results are passed as the first argument whereas in LON-CAPA the results are set equal to the function. \\
114: \hline
115: random\_exponential (return\_array,item\_cnt,seed,av) &@return\_array=\&random\_exponential (\$item\_cnt,\$seed,\$av)
116: NOTE: \$av MUST be non-negative. &Generate \$item\_cnt deviates of exponential distribution. &In CAPA the results are passed as the first argument whereas in LON-CAPA the results are set equal to the function. \\
117: \hline
118: random\_poisson (return\_array,item\_cnt,seed,mu) &@return\_array=\&random\_poisson (\$item\_cnt,\$seed,\$mu)
119: NOTE: \$mu MUST be non-negative. &Generate \$item\_cnt deviates of poisson distribution. &In CAPA the results are passed as the first argument whereas in LON-CAPA the results are set equal to the function. \\
120: \hline
121: random\_chi (return\_array,item\_cnt,seed,df) &@return\_array=\&random\_chi (\$item\_cnt,\$seed,\$df)
122: NOTE: \$df MUST be positive. &Generate \$item\_cnt deviates of chi\_square distribution with \$df degrees of freedom. &In CAPA the results are passed as the first argument whereas in LON-CAPA the results are set equal to the function. \\
123: \hline
124: random\_noncentral\_chi (return\_array,item\_cnt,seed,df,nonc) &@return\_array=\&random\_noncentral\_chi (\$item\_cnt,\$seed,\$df,\$nonc)
125: NOTE: \$df MUST be at least 1 and \$nonc MUST be non-negative. &Generate \$item\_cnt deviates of noncentral\_chi\_square distribution with \$df degrees of freedom and noncentrality parameter \$nonc. &In CAPA the results are passed as the first argument whereas in LON-CAPA the results are set equal to the function. \\
126: \hline
127: NOT IMPLEMENTED IN CAPA &@return\_array=\&random\_f (\$item\_cnt,\$seed,\$dfn,\$dfd)
128: NOTE: Both \$dfn and \$dfd MUST be positive. &Generate \$item\_cnt deviates of F (variance ratio) distribution with degrees of freedom \$dfn (numerator) and \$dfd (denominator). &New to LON-CAPA \\
129: \hline
130: NOT IMPLEMENTED IN CAPA &@return\_array=\&random\_noncentral\_f (\$item\_cnt,\$seed,\$dfn,\$dfd,\$nonc)
131: NOTE: \$dfn must be at least 1, \$dfd MUST be positive, and \$nonc must be non-negative. &Generate \$item\_cnt deviates of noncentral F (variance ratio) distribution with degrees of freedom \$dfn (numerator) and \$dfd (denominator). \$nonc is the noncentrality parameter. &New to LON-CAPA \\
132: \hline
133: NOT DOCUMENTED IN CAPA &@return\_array=\&random\_multivariate\_normal (\$item\_cnt,\$seed,$\backslash$@mean,$\backslash$@covar)
134: NOTE: @mean should be of length p array of real numbers. @covar should be a length p array of references to length p arrays of real numbers (i.e. a p by p matrix. &Generate \$item\_cnt deviates of multivariate\_normal distribution with mean vector @mean and variance-covariance matrix. &Note the backslash before the @mean and @covar arrays. \\
135: \hline
136: NOT IMPLEMENTED IN CAPA &@return\_array=\&random\_multinomial (\$item\_cnt,\$seed,@p)
137: NOTE: \$item\_cnt is rounded with int() and the result must be non-negative. The number of elements in @p must be at least 2. &Returns single observation from multinomial distribution with \$item\_cnt events classified into as many categories as the length of @p. The probability of an event being classified into category i is given by ith element of @p. The observation is an array with length equal to @p, so when called in a scalar context it returns the length of @p. The sum of the elements of the obervation is equal to \$item\_cnt. &New to LON-CAPA \\
138: \hline
139: NOT IMPLEMENTED IN CAPA &@return\_array=\&random\_permutation (\$seed,@array) &Returns @array randomly permuted. &New to LON-CAPA \\
140: \hline
141: NOT IMPLEMENTED IN CAPA &@return\_array=\&random\_uniform (\$item\_cnt,\$seed,\$low,\$high)
142: NOTE: \$low must be less than or equal to \$high. &Generate \$item\_cnt deviates from a uniform distribution. &New to LON-CAPA \\
143: \hline
144: NOT IMPLEMENTED IN CAPA &@return\_array=\&random\_uniform\_integer (\$item\_cnt,\$seed,\$low,\$high)
145: NOTE: \$low and \$high are both passed through int(). \$low must be less than or equal to \$high. &Generate \$item\_cnt deviates from a uniform distribution in integers. &New to LON-CAPA \\
146: \hline
147: NOT IMPLEMENTED IN CAPA &@return\_array=\&random\_binomial (\$item\_cnt,\$seed,\$nt,\$p)
148: NOTE: \$nt is rounded using int() and the result must be non-negative. \$p must be between 0 and 1 inclusive. &Generate \$item\_cnt deviates from the binomial distribution with \$nt trials and the probabilty of an event in each trial is \$p. &New to LON-CAPA \\
149: \hline
150: NOT IMPLEMENTED IN CAPA &@return\_array=\&random\_negative\_binomial (\$item\_cnt,\$seed,\$ne,\$p)
151: NOTE: \$ne is rounded using int() and the result must be positive. \$p must be between 0 and 1 exclusive. &Generate an array of \$item\_cnt outcomes generated from negative binomial distribution with \$ne events and the probabilty of an event in each trial is \$p. &New to LON-CAPA \\
152: \hline
153: \end{longtable}
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>