The R Project SVN R

Rev

Rev 42302 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 42302 Rev 44737
Line 1... Line 1...
1
/*
1
/*
2
 *  Mathlib : A C Library of Special Functions
2
 *  Mathlib : A C Library of Special Functions
3
 *  Copyright (C) 1998 Ross Ihaka
3
 *  Copyright (C) 1998 Ross Ihaka
4
 *  Copyright (C) 2000 The R Development Core Team
4
 *  Copyright (C) 2000--2008 The R Development Core Team
5
 *
5
 *
6
 *  This program is free software; you can redistribute it and/or modify
6
 *  This program is free software; you can redistribute it and/or modify
7
 *  it under the terms of the GNU General Public License as published by
7
 *  it under the terms of the GNU General Public License as published by
8
 *  the Free Software Foundation; either version 2 of the License, or
8
 *  the Free Software Foundation; either version 2 of the License, or
9
 *  (at your option) any later version.
9
 *  (at your option) any later version.
Line 30... Line 30...
30
 
30
 
31
#include "nmath.h"
31
#include "nmath.h"
32
 
32
 
33
double rexp(double scale)
33
double rexp(double scale)
34
{
34
{
35
    if (!R_FINITE(scale) || scale <= 0.0)
35
    if (!R_FINITE(scale) || scale <= 0.0) {
-
 
36
	if(scale == 0.) return 0.;
-
 
37
	/* else */
36
	ML_ERR_return_NAN;
38
	ML_ERR_return_NAN;
37
 
39
    }
38
    return scale * exp_rand();
40
    return scale * exp_rand();
39
}
41
}