3dmatrix.cc

Go to the documentation of this file.
00001 
00007 /******************************************************************
00008 
00009 3dmatrix.cc
00010 
00011 A small batch of functions in order to manipulate 3d/4d/5d matrices
00012 
00013 *******************************************************************/
00014 
00015 #include <stdlib.h>
00016 #include "3dmatrix.h"
00017 
00018 #include <libciomr/libciomr.h>
00019 
00020 using namespace psi::intder;
00021 
00022 C3DMatrix::C3DMatrix()
00023 {
00024   array = NULL;
00025 }
00026 
00027 C3DMatrix::C3DMatrix(int x, int y, int z)
00028 {
00029   Create(x, y, z);
00030 }
00031 
00032 C3DMatrix::~C3DMatrix()
00033 {
00034   if (array)
00035     free(array);
00036   array = NULL;
00037 }
00038 
00039 void C3DMatrix::Create(int x, int y, int z)
00040 {
00041   Size(x,y,z);
00042   array = (double*) malloc(size * sizeof(double));
00043   nx = x;
00044   ny = y;
00045   nz = z;
00046 }
00047 
00048 C4DMatrix::C4DMatrix()
00049 {
00050   array = NULL;
00051 }
00052                                                                                                 
00053 C4DMatrix::C4DMatrix(int w, int x, int y, int z)
00054 {
00055   Create(w, x, y, z);
00056 }
00057                                                                                                 
00058 C4DMatrix::~C4DMatrix()
00059 {
00060   if (array)
00061     free(array);
00062   array = NULL;
00063 }
00064                                                                                                 
00065 void C4DMatrix::Create(int w, int x, int y, int z)
00066 {
00067   Size(w, x, y, z);
00068   array = (double*) malloc(size * sizeof(double));
00069         nw = w;
00070   nx = x;
00071   ny = y;
00072   nz = z;
00073 }
00074 
00075 C5DMatrix::C5DMatrix()
00076 {
00077   array = NULL;
00078 }
00079                                                                                                 
00080 C5DMatrix::C5DMatrix(int v, int w, int x, int y, int z)
00081 {
00082   Create(v, w, x, y, z);
00083 }
00084                                                                                                 
00085 C5DMatrix::~C5DMatrix()
00086 {
00087   if (array)
00088     free(array);
00089   array = NULL;
00090 }
00091                                                                                                 
00092 void C5DMatrix::Create(int v, int w, int x, int y, int z)
00093 {
00094   Size(v, w, x, y, z);
00095   array = (double*) malloc(size * sizeof(double));
00096   nv = v;
00097   nw = w;
00098   nx = x;
00099   ny = y;
00100   nz = z;
00101 }
00102 

Generated on Wed Feb 13 16:35:39 2008 for PSI by  doxygen 1.5.4