Programmer Guide/Command Reference/EVAL/vsubn: Difference between revisions
From STX Wiki
< Programmer Guide | Command Reference | EVAL
Jump to navigationJump to search
No edit summary |
No edit summary |
||
Line 25: | Line 25: | ||
<pre> | <pre> | ||
// The function y=f(x) is given by the points y[i]=f(x[i]). | // The function y=f(x) is given by the points y[i]=f(x[i]). | ||
// Approximate the definite integral of the function: | // Approximate the definite integral of the function: | ||
#n := int $#y[!nrow]-1 | #n := int $#y[!nrow]-1 |
Revision as of 09:10, 13 April 2011
Extract rows from a vector or matrix.
- Usage
vsubn(x {, o {, n}})
- x
- source vector or matrix
- o
- offset, 0 <= o <
nrow(x)
(default=0) - n
- length, n > 0 and o+n <=
nrow(x)
(default=nrow(x)-o
)
- Result
- A numerical object with
ncol(x)
columns and n rows, consisting of the rows o to o+n-1 of the argument x. - See also
- vsubc, select, vv
Example:
#a := eval vv(1,2,3,4,5) #b := eval vmcol($#a, vv(5,4,3,2,1)) #c := vsubn($#a,3) // -> vector: $#c = { 4 , 5 } #d := eval vsubn($#b, 1 , 3) // -> matrix: $#d[*,0] = { 2 , 3 , 4 }, $#d[*,1] = { 4 , 3 , 2 } #e := eval vsubn($#a, 2, 1) // -> scalar: $#e = 2, this is equivalent to $#a[2] #f := eval vsubn($#b, 2, 1) // -> vector (!!): $#f = { 3 , 3 }, this is equivalent to $#b[2,*]
Use the trapezoidal rule to approximate technique definite integral of a function.
// The function y=f(x) is given by the points y[i]=f(x[i]). // Approximate the definite integral of the function: #n := int $#y[!nrow]-1 #a = eval (vsubn($#x,1,$#n)-vsubn($#x,0,$#n)) * (vsubn($#y,1,$#n)+vsubn($#y,0,$#n)) / 2