comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Any easy/build-in construct to extract submatrices from larger matrix?
Date: Sun, 24 Jun 2012 18:11:27 +0200
Date: 2012-06-24T18:11:27+02:00	[thread overview]
Message-ID: <mcrol4yvkaqn.1cyvzd9r1sp8k.dlg@40tude.net> (raw)
In-Reply-To: js70fg$pse$1@speranza.aioe.org

On Sun, 24 Jun 2012 07:16:50 -0500, Nasser M. Abbasi wrote:

> On 6/24/2012 6:10 AM, Dmitry A. Kazakov wrote:
> 
>> And to me the problem is not clear. Are you writing a concrete program or
>> considering a proper way to model matrix lattices in a strongly typed
>> programming language? The difference is huge.
>>
> I was try to implement, just for fun, finding the adjungate
> matrix, using the direct algorithm using Ada, as shown here:
> 
> http://en.wikipedia.org/wiki/Adjugate_matrix
> 
> it requires finding the cofactors of each element in a 2D matrix.

I suppose that there exist much better numerical methods than doing this as
described in the definition.

> Hence needed a simply way to obtain a submatrix from the main
> matrix.

If you want a function which would return a submatrix obtained by removing
the row I and column J:

function Exclude (A : Complex_Matrix; I, J : Integer)
   return Complex_Matrix is
   AI, AJ : Integer := A'First (1);
begin
   return B : Complex_Matrix (1..A'Length (1)-1, 1..A'Length (2)-1) do
      AI := A'First (1);
      for BI in B'Range (1) loop
         if AI = I then
            AI := AI + 1;
         end if;
         AJ := A'First (2);
         for BJ in B'Range (2) loop
            if AJ = J then
               AJ := AJ + 1;
            end if;
            B (BI, BJ) := A (AI, AJ); 
            AJ := AJ + 1;
         end loop;
         AI := AI + 1;
      end loop;
   end return;
end Exclude;

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de



  reply	other threads:[~2012-06-24 16:11 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-24  8:05 Any easy/build-in construct to extract submatrices from larger matrix? Nasser M. Abbasi
2012-06-24  8:24 ` Dmitry A. Kazakov
2012-06-24  8:55   ` Nasser M. Abbasi
2012-06-24 11:10     ` Dmitry A. Kazakov
2012-06-24 12:16       ` Nasser M. Abbasi
2012-06-24 16:11         ` Dmitry A. Kazakov [this message]
2012-06-24 17:14           ` Nasser M. Abbasi
2012-06-24 18:33             ` Dmitry A. Kazakov
2012-06-25  5:44             ` J-P. Rosen
2012-06-25  6:32               ` Nasser M. Abbasi
2012-06-25  7:54                 ` J-P. Rosen
2012-06-25  8:20                   ` Dmitry A. Kazakov
2012-06-25 14:21                   ` Nasser M. Abbasi
2012-06-25  8:36                 ` Georg Bauhaus
2012-06-25 13:17                   ` Nasser M. Abbasi
2012-06-26 11:44                     ` Georg Bauhaus
2012-06-25 16:49                 ` Pascal Obry
2012-06-25 17:36                   ` Nasser M. Abbasi
2012-06-25 18:49                     ` stefan-lucks
2012-06-26  4:41                       ` Nasser M. Abbasi
2012-06-26  7:15                 ` Jacob Sparre Andersen
2012-06-26  9:51                   ` Nasser M. Abbasi
2012-06-25  9:33               ` Simon Wright
2012-06-26  2:48 ` Jerry
2012-06-26  4:19   ` Nasser M. Abbasi
2012-06-26  7:06   ` Nasser M. Abbasi
2012-06-26 12:54     ` Robert A Duff
2012-06-26 15:19       ` Adam Beneschan
2012-06-26 21:14         ` Robert A Duff
2012-06-27 23:42     ` Shark8
2012-06-26  7:10   ` Dmitry A. Kazakov
2012-06-26 15:06   ` Adam Beneschan
2012-06-26 21:19     ` Robert A Duff
2012-06-26 21:40       ` Adam Beneschan
2012-07-03  4:22         ` Randy Brukardt
2012-07-03  8:37           ` Dmitry A. Kazakov
2012-07-05  1:33             ` Randy Brukardt
2012-07-05  7:08               ` Dmitry A. Kazakov
2012-07-06 23:47                 ` Randy Brukardt
2012-07-07  8:22                   ` Dmitry A. Kazakov
2012-07-05 18:56               ` Adam Beneschan
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox