Files
@ 401251dc8013
Branch filter:
Location: EI/VirtualLeaf/src/sqr.h - annotation
401251dc8013
1.5 KiB
text/x-chdr
Corrected problem with "testmodel": the standard initial condition (a polygon) was no longer constructed.
user: Roeland Merks <roeland.merks@cwi.nl>
branch 'default'
changed src/modelcatalogue.cpp
user: Roeland Merks <roeland.merks@cwi.nl>
branch 'default'
changed src/modelcatalogue.cpp
79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e 79f94eaa3b9e | /*
*
* $Id$
*
* This file is part of the Virtual Leaf.
*
* The Virtual Leaf is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* The Virtual Leaf is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with the Virtual Leaf. If not, see <http://www.gnu.org/licenses/>.
*
* From "Numerical recipes in C"
*
* Copyright 2010 Roeland Merks.
*
*/
#ifndef _SQR_H_
#define _SQR_H_
/* static float sqrarg;
#define SQR(a) ((sqrarg=(a)) == 0.0 ? 0.0 : sqrarg*sqrarg)
static double dsqrarg;
#define DSQR(a) ((dsqrarg=(a)) == 0.0 ? 0.0 : dsqrarg*dsqrarg)
*/
// redefine these macros as inline functions, to prevent scary
// behavior. (According to compiler warnings, the above macros from
// Numerical Recipes in C are officially undefined...)
//
// However, they seem to work, but it seems safer to redefine them.
// Inline functions will behave like macros anyhow.
inline double DSQR( double a ) {
if (a == 0.0) {
return 0.0;
} else {
return a*a;
}
}
inline float SQR( float a ) {
if (a == 0.0) {
return 0.0;
} else {
return a*a;
}
}
#endif
|