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] Diff of /trunk/gadget/matrix.cc
[mareframe] / trunk / gadget / matrix.cc Repository:
ViewVC logotype

Diff of /trunk/gadget/matrix.cc

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2, Wed Apr 29 12:55:30 2015 UTC revision 11, Thu Jul 23 19:00:38 2015 UTC
# Line 2  Line 2 
2  #include "mathfunc.h"  #include "mathfunc.h"
3  #include "gadget.h"  #include "gadget.h"
4    
5    //TODO doc
6  //TODO usar mallock  //TODO usar mallock
7  Matrix::Matrix(int nr, int nc, double value) {  Matrix::Matrix(int nr, int nc, double value) {
8    
9          m = new double[nr * nc];          m = new double[nr * nc];
   
10          nrow = nr;          nrow = nr;
11          ncol = nc;          ncol = nc;
12          int i, j;          int i, j;
# Line 94  Line 94 
94  //}  //}
95    
96  //Matrix& Matrix::operator = (const Matrix& d) {  //Matrix& Matrix::operator = (const Matrix& d) {
97  //  int i;  //  int i,j;
98  //  if (v != 0) {  ////  if (v != 0) {
99  //    for (i = 0; i < nrow; i++)  ////    for (i = 0; i < nrow; i++)
100  //      delete v[i];  ////      delete v[i];
101  //    delete[] v;  ////    delete[] v;
102  //  }  ////  }
103    //  if (m != 0)
104    //        delete[] m;
105  //  //
106  //  nrow = d.nrow;  //  nrow = d.nrow;
107  //  if (nrow > 0) {  //  ncol = d.ncol;
 //    v = new double*[nrow];  
 //    for (i = 0; i < nrow; i++)  
 //      v[i] = new double(*d[i]);  
108  //  //
109    //  double* aux;
110    //  if (nrow > 0) {
111    //        m = d.m;
112    //////    v = new double*[nrow];
113    ////      m = new double[nrow * ncol];
114    //////    for (i = 0; i < nrow; i++)
115    //////      v[i] = new double(*d[i]);
116    ////      cout << "0000000?????????:" << d[20] << endl;
117    ////      for (i = 0; i < nrow; i++) {
118    ////                    for (j = 0; j < ncol; j++){
119    //////                          cout << "j:" << j << endl;
120    ////                            cout << "????????????????????0" << endl;
121    ////                            aux = (double*) d[i*ncol+j];
122    ////                            cout << "????????????????????1" << endl;
123    ////                            m[i*ncol+j] = 0;
124    //////                          cout << "????????????????????2" << endl;
125    ////                    }
126    ////            }
127  //  } else  //  } else
128  //    v = 0;  //    m = 0;
129  //  //
130  //  return *this;  //  return *this;
131  //}  //}
# Line 123  Line 140 
140          }          }
141  }  }
142    
143    void Matrix::Initialize(int nr, int nc, double initial) {
144            if (m != 0)
145                    delete[] m;
146    
147            m = new double[nr * nc];
148            nrow = nr;
149            ncol = nc;
150            int i, j;
151            for (i = 0; i < nr; i++) {
152                    for (j = 0; j < nc; j++)
153                            m[i*ncol+j] = initial;
154                    }
155    }
156    
157  void Matrix::Print(ofstream& outfile) const {  void Matrix::Print(ofstream& outfile) const {
158          int i, j;          int i, j;
159          for (i = 0; i < nrow; i++) {          for (i = 0; i < nrow; i++) {
# Line 136  Line 167 
167    
168  void Matrix::setToZero() {  void Matrix::setToZero() {
169          int i, j;          int i, j;
 //  **v = {0};  
170          for (i = 0; i < nrow; i++)          for (i = 0; i < nrow; i++)
171                  for (j = 0; j < ncol; j++)                  for (j = 0; j < ncol; j++)
172                          m[i*ncol+j] = 0;                          m[i*ncol+j] = 0.0;
 //    (*v[i]).setToZero();  
173  }  }

Legend:
Removed from v.2  
changed lines
  Added in v.11

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

Powered By FusionForge