Simpatie.ro - matrimoniale
lisp2arx
Visual Programming for AutoLisp Mathématiques en programmation Lisp.. doc2cpp,doc2lsp, sld2lsp, bmp2dcl, free__GifCcapture for all-CAD'platforms..
Nou pe simpatie:
mony25172 din Suceava
Femeie
24 ani
Suceava
cauta Barbat
30 - 44 ani
lisp2arxReguliInregistrareLoginPozeNu sunteti logat. Lista Forumurilor Pe Tematici
lisp2arx / Abecedar Scolar /

dos_matrix

Pagini: 1  
#1
admin
Administrator
Din: Bucharest
Postari: 523


Code:

{$region Matrix}
  begin
    var a:=new Matrix(3,4,-2,4,0,3,6,11,-5,7,0,8,-4,1);
    a.SetRow(new Vector(a.Row(2).Value.Select(x->x-2).ToArray),2);
    a.MultCol(1,3);
    var vb:=new Vector(1,-1,0,2);
    a.InsertRowBefore(vb,3);
    a.SwapRows(2,3);
    a.SwapCols(1,3);
    a:=a.Transpose;
    var Atr:=a.Inv;
    var d:=254.0;
    var x:=new Matrix(4,4,173/d,83/d,27/d,28/d,-426/d,-222/d,-112/d,72/d,
        122/d,60/d,44/d,8/d,-277/d,-105/d,-77/d,-14/d);
    TestMatrixM('Matrix 1',Atr,x,1e-14);
  
    a:=new Matrix(2,4,-3,0,4,-1,2,-7,5,6);
    var b:=new Matrix(2,3,8,1,-5,6,7,2);
    var c:=new Matrix(3,4,1,-1,7,0,3,2,9,4,5,0,-2,-4);
    var r:=(((a-b*c).Transpose)*a).Det;
    TestMatrixS('Matrix 2',r,0.0,1e-15);
    
    a:=new Matrix(3,3,2,3,-1,1,-2,1,1,0,2);
    vb:=new Vector(9,3,2);
    var vr:=a.Inv*vb;
    TestMatrixV('Matrix 3',vr,new Vector(4,0,-1),1e-15);
    
    vr:=new Vector(vb.Length);
    var det:=a.Det;
    for var i:=0 to vb.Length-1 do begin
      var t:=a.Copy;
      t.SetCol(vb,i,0);
      var detx:=t.Det;
      vr.Value[i]:=detx/det;
    end;
    TestMatrixV('Matrix 4',vr,new Vector(4,0,-1),1e-15);
    
    var cond:real;
    vr:=A.SLAU(vb,cond);
    TestMatrixV('Matrix 5.1',vr,new Vector(4,0,-1),1e-15);
    TestMatrixS('Matrix 5.2',cond,1.97935318837932,1e-14);

    Writeln(nt:2,'. Проверка класса Matrix завершена');
    nt+=1
  end;  {$endregion}



_______________________________________
http://www.puiubrat.3x.ro/lisp2arx/lisp ... O2UTM2.pdf

 
   

Topicuri similare

Pagini: 1  
Mergi la