# fresnel
> Compute the [Fresnel integrals][fresnel-integral] S(x) and C(x).
The [Fresnel integrals][fresnel-integral] are defined as
Some sources define the Fresnel integrals using t2 for the argument of the sine and cosine. To get these functions, multiply the computed integrals by `√(π/2)` and multiply the argument `x` by `√(2/π)`.
## Usage
```javascript
var fresnel = require( '@stdlib/math/base/special/fresnel' );
```
#### fresnel( \[out,] x )
Simultaneously computes the [Fresnel integrals][fresnel-integral] S(x) and C(x).
```javascript
var v = fresnel( 0.0 );
// returns [ ~0.0, ~0.0 ]
v = fresnel( 1.0 );
// returns [ ~0.438, ~0.780 ]
v = fresnel( Infinity );
// returns [ ~0.5, ~0.5 ]
v = fresnel( -Infinity );
// returns [ ~-0.5, ~-0.5 ]
v = fresnel( NaN );
// returns [ NaN, NaN ]
```
By default, the function returns the S(x) and C(x) as a two-element `array`. To avoid extra memory allocation, the function supports providing an output (destination) object.
```javascript
var Float64Array = require( '@stdlib/array/float64' );
var out = new Float64Array( 2 );
var v = fresnel( out, 0.0 );
// returns [ ~0.0, ~0.0 ]
var bool = ( v === out );
// returns true
```
## Examples
```javascript
var linspace = require( '@stdlib/array/linspace' );
var fresnel = require( '@stdlib/math/base/special/fresnel' );
var x = linspace( 0.0, 10.0, 100 );
var i;
for ( i = 0; i < x.length; i++ ) {
console.log( fresnel( x[ i ] ) );
}
```
[fresnel-integral]: https://en.wikipedia.org/wiki/Fresnel_integral