manpagez: man pages & more
info asymptote
Home | html | info | man
 [ << ] [ < ] [ Up ] [ > ] [ >> ] [Top] [Contents] [Index] [ ? ]

## 8.3 `math`

This package extends `Asymptote`’s mathematical capabilities with useful functions such as

`void drawline(picture pic=currentpicture, pair P, pair Q, pen p=currentpen);`

draw the visible portion of the (infinite) line going through `P` and `Q`, without altering the size of picture `pic`, using pen `p`.

`real intersect(triple P, triple Q, triple n, triple Z);`

returns the intersection time of the extension of the line segment `PQ` with the plane perpendicular to `n` and passing through `Z`.

`triple intersectionpoint(triple n0, triple P0, triple n1, triple P1);`

Return any point on the intersection of the two planes with normals `n0` and `n1` passing through points `P0` and `P1`, respectively. If the planes are parallel, return `(infinity,infinity,infinity)`.

`pair[] quarticroots(real a, real b, real c, real d, real e);`

returns the four complex roots of the quartic equation ax^4+bx^3+cx^2+dx+e=0.

`pair[][] fft(pair[][] a, int sign=1)`

returns the two-dimensional Fourier transform of a using the given `sign`.

`real time(path g, real x, int n=0)`

returns the `n`th intersection time of path `g` with the vertical line through x.

`real time(path g, explicit pair z, int n=0)`

returns the `n`th intersection time of path `g` with the horizontal line through `(0,z.y)`.

`real value(path g, real x, int n=0)`

returns the `n`th `y` value of `g` at `x`.

`real value(path g, real x, int n=0)`

returns the `n`th `x` value of `g` at `y=z.y`.

`real slope(path g, real x, int n=0)`

returns the `n`th slope of `g` at `x`.

`real slope(path g, explicit pair z, int n=0)`

returns the `n`th slope of `g` at `y=z.y`.

int[][] segment(bool[] b) returns the indices of consecutive true-element segments of bool[] `b`.

`real[] partialsum(real[] a)`

returns the partial sums of a real array `a`.

`real[] partialsum(real[] a, real[] dx)`

returns the partial `dx`-weighted sums of a real array `a`.

`bool increasing(real[] a, bool strict=false)`

returns, if `strict=false`, whether `i > j` implies `a[i] >= a[j]`, or if `strict=true`, whether `i > j` implies implies `a[i] > a[j]`.

`int unique(real[] a, real x)`

if the sorted array `a` does not contain `x`, insert it sequentially, returning the index of `x` in the resulting array.

`bool lexorder(pair a, pair b)`

returns the strict lexicographical partial order of `a` and `b`.

`bool lexorder(triple a, triple b)`

returns the strict lexicographical partial order of `a` and `b`.

 [ << ] [ < ] [ Up ] [ > ] [ >> ] [Top] [Contents] [Index] [ ? ]

This document was generated on May 24, 2014 using texi2html 5.0.

```© manpagez.com 2000-2019