|
|
Functions | |
| array | diff1 (const array &in, int dim=-1) |
| difference between elements along a dimension | |
| array | diff2 (const array &in, int dim=-1) |
| difference between the difference of elements along a dimension | |
| void | grad (array &dx, array &dy, const array &in) |
| Gradient of a matrix (central differencing). | |
| array af::diff1 | ( | const array & | in, |
| int | dim = -1 |
||
| ) |
difference between elements along a dimension
array a; // a = [0 1 2 3 4 5] print(diff1(a)); // [1 1 1 1 1] array b; // b = [0 2 4] // [1 3 5] //Difference along first dimension, down columns print(diff1(b)); // diff1(b) = [1 1 1] //Difference alone second dimension, across rows print(diff1(b,1)); // diff1(b,1) = [2 2] // [2 2]
| [in] | in | |
| [in] | dim | dimension along which to operate (-1 indicates first non-singleton dimension) |
| array af::diff2 | ( | const array & | in, |
| int | dim = -1 |
||
| ) |
difference between the difference of elements along a dimension
float f[] = {5,10,20,25,50,100}; array a(6,1,f); //a = f //take diff1 twice array b = diff1(a); //b=[5 10 5 25 50] array c = diff1(b); //c=[5 -5 20 25] //or use diff2 once array d = diff2(a); //d=c=[5 -5 20 25]
| [in] | in | |
| [in] | dim | dimension along which to operate (-1 indicates first non-singleton dimension) |
| void af::grad | ( | array & | dx, |
| array & | dy, | ||
| const array & | in | ||
| ) |
Gradient of a matrix (central differencing).
array a; //a = [4 5 3] // [8 10 9] // [9 15 20] array dx,dy; grad(dx,dy,a); // Horizontal gradient // dx = [1 -0.5 -2] // [2 0.5 -1] // [6 5.5 5] // Vertical gradient // dy = [4 5 6] // [2.5 5 8.5] // [1 5 11]
| [in] | in | 2D |
| [out] | dx | gradient along the first dimension |
| [out] | dy | gradient along the second dimension |