Log In | Get Help   
Home My Page Projects Code Snippets Project Openings Mareframe
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files
[mareframe] Annotation of /trunk/paramin-beta/datascaler.cc
[mareframe] / trunk / paramin-beta / datascaler.cc Repository:
ViewVC logotype

Annotation of /trunk/paramin-beta/datascaler.cc

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1 - (view) (download)

1 : agomez 1 #include "datascaler.h"
2 :    
3 :     DataScaler::DataScaler() {
4 :     numVar = -1;
5 :     }
6 :    
7 :     void DataScaler::setInitialData(const DoubleVector& l, const DoubleVector& u) {
8 :     //assert(l.Size() > 0);
9 :     //assert(l.Size() == u.Size());
10 :     numVar = l.Size();
11 :     lbd = l;
12 :     ubd = u;
13 :     }
14 :    
15 :     DataScaler::~DataScaler() {
16 :     }
17 :    
18 :     double DataScaler::scaleResult(double y, int id, const DoubleVector& v1) {
19 :     return y;
20 :     }
21 :    
22 :     const DoubleVector& DataScaler::scaleX(const DoubleVector& v1) {
23 :     assert(numVar > 0);
24 :     assert(numVar == v1.Size());
25 :     int i;
26 :     x_vec.Reset();
27 :     x_vec.resize(numVar, 0.0);
28 :     for (i = 0; i < numVar; i++)
29 :     x_vec[i] = scale(v1[i], i);
30 :     return x_vec;
31 :     }
32 :    
33 :     double DataScaler::scale(double p, int i) {
34 :     //assert(numVar > 0);
35 :     //assert(i > 0 && i <= numVar);
36 :     return (p - ((ubd[i] + lbd[i]) * 0.5)) / ((ubd[i] - lbd[i]) * 0.5);
37 :     }
38 :    
39 :     const DoubleVector& DataScaler::unscaleX(const DoubleVector& v1) {
40 :     //assert(numVar > 0);
41 :     //assert(v1.Size() == numVar);
42 :     int i;
43 :     x_vec.Reset();
44 :     x_vec.resize(numVar, 0.0);
45 :     for (i = 0; i < numVar; i++)
46 :     x_vec[i]= unscale(v1[i], i);
47 :     return x_vec;
48 :     }
49 :    
50 :     double DataScaler::unscale(double p, int i) {
51 :     //assert(numVar > 0);
52 :     //assert(i > 0 && i <= numVar);
53 :     return (p * (ubd[i] - lbd[i]) * 0.5 + (lbd[i] + ubd[i]) * 0.5);
54 :     }
55 :    
56 :     void DataScaler::setPenalty(int numIndexes) {
57 :     penalty.resize(numVar, 0.0);
58 :     }
59 :    
60 :     const DoubleVector& DataScaler::getLower() {
61 :     return lbd;
62 :     }
63 :    
64 :     const DoubleVector& DataScaler::getUpper() {
65 :     return ubd;
66 :     }
67 :    
68 :     int DataScaler::getNumVariables() {
69 :     return numVar;
70 :     }

root@forge.cesga.es
ViewVC Help
Powered by ViewVC 1.0.0  

Powered By FusionForge