]> git.donarmstrong.com Git - lilypond.git/blobdiff - flower/diagonal-storage.cc
release: 0.1.46
[lilypond.git] / flower / diagonal-storage.cc
index 090f308635db8cb261110fb5d7f4328011394836..7fd6227d8f131d7f0d863b39fa38ac10d55c15ac 100644 (file)
@@ -53,13 +53,13 @@ Diagonal_storage::set_band_size (int s)
   Full_storage f (dim(), 2*s+1);
   for (int i=0; i < dim(); i++) 
     {
-       int k=-s;
-       for (;  k < -band_size_i(); k++)
-           f.elem (i,k + s) = 0.0;
-       for (; k <=  band_size_i()&& k<=s ; k++)
-           f.elem (i, k + s) = band_.elem (i,k+ band_size_i());
-       for (; k <= s; k++)
-           f.elem (i, k + s) =0.0;
+      int k=-s;
+      for (;  k < -band_size_i(); k++)
+       f.elem (i,k + s) = 0.0;
+      for (; k <=  band_size_i()&& k<=s ; k++)
+       f.elem (i, k + s) = band_.elem (i,k+ band_size_i());
+      for (; k <= s; k++)
+       f.elem (i, k + s) =0.0;
     }
 
   band_ = f;
@@ -123,8 +123,8 @@ Diagonal_storage::resize_dim (int d)
   Full_storage f (d, 2*band_size_i()+1);
   for (int i=0; i < d && i < dim(); i++) 
     {
-       for (int k=0;  k < 2*band_size_i(); k++)
-           f.elem (i,k) = elem (i,k);
+      for (int k=0;  k < 2*band_size_i(); k++)
+       f.elem (i,k) = elem (i,k);
     }
 
   band_ = f;
@@ -143,11 +143,11 @@ Diagonal_storage::mult_next (int &i, int &j) const
 {
   j++;
   if (j < i - band_size_i()) 
-       j = i- band_size_i();
+    j = i- band_size_i();
   if (j > i + band_size_i() || j >= dim ()) 
     {
-       i++;
-       j = 0 >? i - band_size_i(); 
+      i++;
+      j = 0 >? i - band_size_i(); 
     }
 }
 
@@ -162,12 +162,12 @@ Diagonal_storage::trans_next (int &i, int& j) const
 {
   i++;
   if (i < j - band_size_i())
-       i = j-band_size_i();
+    i = j-band_size_i();
   
   if (i >= dim() || i > j + band_size_i ()) 
     {
-       j++;
-       i = 0 >? j - band_size_i(); 
+      j++;
+      i = 0 >? j - band_size_i(); 
     }
 }
 
@@ -177,9 +177,9 @@ Real
 Diagonal_storage::elem (int i, int j) const
 {
   if (abs (i-j) > band_size_i())
-       return 0;
+    return 0;
   else
-       return band_.elem (i, j - i +band_size_i());
+    return band_.elem (i, j - i +band_size_i());
 }
 
 Real &
@@ -191,9 +191,9 @@ Diagonal_storage::elem (int i, int j)
   assert (!nul_entry);
 
   if (abs (i-j) > band_size_i())  
-       return nul_entry;
+    return nul_entry;
   else
-       return band_.elem (i, j - i + band_size_i());
+    return band_.elem (i, j - i + band_size_i());
 }
 
 /*
@@ -202,30 +202,30 @@ Diagonal_storage::elem (int i, int j)
 
 bool
 Diagonal_storage::try_right_multiply (Matrix_storage*dest,
-                                    const Matrix_storage*right) const
+                                     const Matrix_storage*right) const
 {
   if (right->name() != Diagonal_storage::static_name ()) 
-       return false;
+    return false;
   
   const Diagonal_storage*  right_diag = (Diagonal_storage const*)right;
   int band2 = right_diag->band_size_i();
   int n = dim();
   /*
     should check if dest is a Diagonal_storage of sufficient size too.
-   */
+    */
   for (int i=0;  i < n; i++) 
     {
-       for (int j = 0; j < n; j++) 
-         {
-           int startk = i - band_size_i() >? 0 >? j - band2;
-           int stopk = i + band_size_i() <? n-1 <? j  + band2;
-           int relk =  startk + band_size_i() -i;
-           Real sum =0.0;
-           for (int k = startk; k <= stopk; k++)
-               sum += band_.elem (i, relk++) * right_diag->elem (k, j);
-           dest->elem (i, j) = sum;
+      for (int j = 0; j < n; j++) 
+       {
+         int startk = i - band_size_i() >? 0 >? j - band2;
+         int stopk = i + band_size_i() <? n-1 <? j  + band2;
+         int relk =  startk + band_size_i() -i;
+         Real sum =0.0;
+         for (int k = startk; k <= stopk; k++)
+           sum += band_.elem (i, relk++) * right_diag->elem (k, j);
+         dest->elem (i, j) = sum;
            
-         }
+       }
     }
   return true;
 }
@@ -239,7 +239,7 @@ Diagonal_storage::Diagonal_storage (Matrix_storage*stor_l, int band_i)
   resize_dim (stor_l->dim());
 
   for (int i=0,j=0; mult_ok (i,j); mult_next (i,j))
-       band_.elem (i, j + band_i -i) = stor_l->elem (i,j);
+    band_.elem (i, j + band_i -i) = stor_l->elem (i,j);
 }
 
 void