MBDyn-1.7.3
Main Page
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
bisec.cc
Go to the documentation of this file.
1
/* $Header: /var/cvs/mbdyn/mbdyn/mbdyn-1.0/libraries/libmbmath/bisec.cc,v 1.12 2017/01/12 14:43:53 masarati Exp $ */
2
/*
3
* MBDyn (C) is a multibody analysis code.
4
* http://www.mbdyn.org
5
*
6
* Copyright (C) 1996-2017
7
*
8
* Pierangelo Masarati <masarati@aero.polimi.it>
9
* Paolo Mantegazza <mantegazza@aero.polimi.it>
10
*
11
* Dipartimento di Ingegneria Aerospaziale - Politecnico di Milano
12
* via La Masa, 34 - 20156 Milano, Italy
13
* http://www.aero.polimi.it
14
*
15
* Changing this copyright notice is forbidden.
16
*
17
* This program is free software; you can redistribute it and/or modify
18
* it under the terms of the GNU General Public License as published by
19
* the Free Software Foundation (version 2 of the License).
20
*
21
*
22
* This program is distributed in the hope that it will be useful,
23
* but WITHOUT ANY WARRANTY; without even the implied warranty of
24
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25
* GNU General Public License for more details.
26
*
27
* You should have received a copy of the GNU General Public License
28
* along with this program; if not, write to the Free Software
29
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
30
*/
31
32
#include "mbconfig.h"
/* This goes first in every *.c,*.cc file */
33
34
#include <cmath>
35
36
#include "ac/f2c.h"
37
#include "
bisec.h
"
38
39
/*
40
* algoritmo di bisezione per ricerca efficiente degli angoli
41
*
42
* v: array dei valori
43
* val: valore da cercare
44
* lb: indice inferiore
45
* ub: indice superiore
46
*
47
* restituisce l'indice corrispondente al valore di v
48
* che approssima per eccesso val;
49
* se val > v[ub] restituisce ub + 1;
50
* se val < v[lb] restituisce lb.
51
* quindi v[ret - 1] <= val <= v[ret]
52
*
53
* Nota: ovviamente si presuppone che i valori di v siano ordinati in modo
54
* crescente e strettamente monotono, ovvero v[i] < v[i + 1].
55
*/
56
extern
"C"
int
57
bisec_d
(
doublereal
* v,
doublereal
val,
int
lb,
int
ub)
58
{
59
return
bisec<doublereal>(v, val, lb, ub);
60
}
61
bisec.h
bisec_d
int bisec_d(doublereal *v, doublereal val, int lb, int ub)
Definition:
bisec.cc:57
doublereal
double doublereal
Definition:
colamd.c:52
libraries
libmbmath
bisec.cc
Generated on Fri Apr 13 2018 10:19:31 for MBDyn-1.7.3 by
1.8.7