ÿØÿà JFIF ÿÛ „ ( %!1!%*+...983,7(-.-
unit-c.ri 0000644 00000000363 15241443247 0006307 0 ustar 00 U:RDoc::AnyMethod[iI" unit:EFI"Matrix::unit;TT:publico:RDoc::Markup::Document:@parts[ :
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(n);T@FI"Matrix;TcRDoc::NormalClass0[@TI"
identity;F component-i.ri 0000644 00000000371 15241443247 0007337 0 ustar 00 U:RDoc::AnyMethod[iI"component:EFI"Matrix#component;TF:publico:RDoc::Markup::Document:@parts[ :
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(i, j);T@FI"Matrix;TcRDoc::NormalClass0[@FI"[];F diagonal%3f-i.ri 0000644 00000000552 15241443247 0007412 0 ustar 00 U:RDoc::AnyMethod[iI"diagonal?:EFI"Matrix#diagonal?;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"2Returns +true+ is this is a diagonal matrix. ;TI"-Raises an error if matrix is not square.;T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass00 elements_to_i-i.ri 0000644 00000000360 15241443247 0010161 0 ustar 00 U:RDoc::AnyMethod[iI"elements_to_i:EFI"Matrix#elements_to_i;TF:publico:RDoc::Markup::Document:@parts[ :
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass00 round-i.ri 0000644 00000000544 15241443247 0006466 0 ustar 00 U:RDoc::AnyMethod[iI"
round:EFI"Matrix#round;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"BReturns a matrix with entries rounded to the given precision ;TI"(see Float#round);T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(ndigits=0);T@FI"Matrix;TcRDoc::NormalClass00 trace-i.ri 0000644 00000000663 15241443247 0006437 0 ustar 00 U:RDoc::AnyMethod[iI"
trace:EFI"Matrix#trace;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"@Returns the trace (sum of diagonal elements) of the matrix.;To:RDoc::Markup::Verbatim; [I" Matrix[[7,6], [3,9]].trace
;TI" => 16;T:@format0:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[[I"tr;Fo;; [ ;
@;0I"();T@FI"Matrix;TcRDoc::NormalClass00 element-i.ri 0000644 00000000365 15241443247 0006771 0 ustar 00 U:RDoc::AnyMethod[iI"element:EFI"Matrix#element;TF:publico:RDoc::Markup::Document:@parts[ :
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(i, j);T@FI"Matrix;TcRDoc::NormalClass0[@FI"[];F rank_e-i.ri 0000644 00000000443 15241443247 0006574 0 ustar 00 U:RDoc::AnyMethod[iI"rank_e:EFI"Matrix#rank_e;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I" deprecated; use Matrix#rank;T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass00 row_vector-c.ri 0000644 00000000705 15241443247 0007521 0 ustar 00 U:RDoc::AnyMethod[iI"row_vector:EFI"Matrix::row_vector;TT:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"NCreates a single-row matrix where the values of that row are as given in ;TI"+row+.;To:RDoc::Markup::Verbatim; [I" Matrix.row_vector([4,5,6])
;TI" => 4 5 6;T:@format0:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"
(row);T@FI"Matrix;TcRDoc::NormalClass00 regular%3f-i.ri 0000644 00000000513 15241443247 0007272 0 ustar 00 U:RDoc::AnyMethod[iI"
regular?:EFI"Matrix#regular?;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"DReturns +true+ if this is a regular (i.e. non-singular) matrix.;T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass00 inspect-i.ri 0000644 00000000442 15241443247 0007001 0 ustar 00 U:RDoc::AnyMethod[iI"inspect:EFI"Matrix#inspect;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"Overrides Object#inspect;T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass00 rows-c.ri 0000644 00000001157 15241443247 0006324 0 ustar 00 U:RDoc::AnyMethod[iI" rows:EFI"Matrix::rows;TT:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"QCreates a matrix where +rows+ is an array of arrays, each of which is a row ;TI"Mof the matrix. If the optional argument +copy+ is false, use the given ;TI"Darrays as the internal structure of the matrix without copying.;To:RDoc::Markup::Verbatim; [I"'Matrix.rows([[25, 93], [-1, 66]])
;TI" => 25 93
;TI" -1 66;T:@format0:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(rows, copy = true);T@FI"Matrix;TcRDoc::NormalClass00 column_count-i.ri 0000644 00000000446 15241443247 0010045 0 ustar 00 U:RDoc::Attr[iI"column_count:ETI"Matrix#column_count;TI"R;T:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"#Returns the number of columns.;T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below0F@I"Matrix;TcRDoc::NormalClass0 to_a-i.ri 0000644 00000000504 15241443247 0006255 0 ustar 00 U:RDoc::AnyMethod[iI" to_a:EFI"Matrix#to_a;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"EReturns an array of arrays that describe the rows of the matrix.;T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass00 rect-i.ri 0000644 00000000761 15241443247 0006275 0 ustar 00 U:RDoc::AnyMethod[iI" rect:EFI"Matrix#rect;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"RReturns an array containing matrices corresponding to the real and imaginary ;TI"parts of the matrix;To:RDoc::Markup::BlankLine o;
; [I">m.rect == [m.real, m.imag] # ==> true for all matrices m;T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[[I"rectangular;Fo;; [ ;@;
0I"();T@FI"Matrix;TcRDoc::NormalClass00 column_vectors-i.ri 0000644 00000000532 15241443247 0010376 0 ustar 00 U:RDoc::AnyMethod[iI"column_vectors:EFI"Matrix#column_vectors;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"GReturns an array of the column vectors of the matrix. See Vector.;T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass00 imag-i.ri 0000644 00000000362 15241443247 0006252 0 ustar 00 U:RDoc::AnyMethod[iI" imag:EFI"Matrix#imag;TF:publico:RDoc::Markup::Document:@parts[ :
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass0[@FI"imaginary;F eigensystem-i.ri 0000644 00000001114 15241443247 0007665 0 ustar 00 U:RDoc::AnyMethod[iI"eigensystem:EFI"Matrix#eigensystem;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"JReturns the Eigensystem of the matrix; see +EigenvalueDecomposition+.;To:RDoc::Markup::Verbatim; [
I" m = Matrix[[1, 2], [3, 4]]
;TI"!v, d, v_inv = m.eigensystem
;TI"d.diagonal? # => true
;TI"v.inv == v_inv # => true
;TI",(v * d * v_inv).round(5) == m # => true;T:@format0:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[[I"
eigen;Fo;; [ ;
@;0I"();T@FI"Matrix;TcRDoc::NormalClass00 %5b%5d-c.ri 0000644 00000000647 15241443247 0006206 0 ustar 00 U:RDoc::AnyMethod[iI"[]:EFI"Matrix::[];TT:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"3Creates a matrix where each argument is a row.;To:RDoc::Markup::Verbatim; [I""Matrix[ [25, 93], [-1, 66] ]
;TI" => 25 93
;TI" -1 66;T:@format0:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(*rows);T@FI"Matrix;TcRDoc::NormalClass00 hermitian%3f-i.ri 0000644 00000000556 15241443247 0007620 0 ustar 00 U:RDoc::AnyMethod[iI"hermitian?:EFI"Matrix#hermitian?;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"4Returns +true+ is this is an hermitian matrix. ;TI"-Raises an error if matrix is not square.;T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass00 eql%3f-i.ri 0000644 00000000343 15241443247 0006413 0 ustar 00 U:RDoc::AnyMethod[iI" eql?:EFI"Matrix#eql?;TF:publico:RDoc::Markup::Document:@parts[ :
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(other);T@FI"Matrix;TcRDoc::NormalClass00 elements_to_f-i.ri 0000644 00000000360 15241443247 0010156 0 ustar 00 U:RDoc::AnyMethod[iI"elements_to_f:EFI"Matrix#elements_to_f;TF:publico:RDoc::Markup::Document:@parts[ :
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass00 det_e-i.ri 0000644 00000000370 15241443247 0006414 0 ustar 00 U:RDoc::AnyMethod[iI"
det_e:EFI"Matrix#det_e;TF:publico:RDoc::Markup::Document:@parts[ :
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass0[@FI"determinant_e;F new-c.ri 0000644 00000000552 15241443247 0006121 0 ustar 00 U:RDoc::AnyMethod[iI"new:ETI"Matrix::new;TT:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"KMatrix.new is private; use Matrix.rows, columns, [], etc... to create.;T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"((rows, column_count = rows[0].size);T@FI"Matrix;TcRDoc::NormalClass00 rank-i.ri 0000644 00000001110 15241443247 0006260 0 ustar 00 U:RDoc::AnyMethod[iI" rank:EFI"Matrix#rank;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [ I"%Returns the rank of the matrix. ;TI"@Beware that using Float values can yield erroneous results ;TI")because of their lack of precision. ;TI"DConsider using exact types like Rational or BigDecimal instead.;To:RDoc::Markup::BlankLine o:RDoc::Markup::Verbatim; [I"Matrix[[7,6], [3,9]].rank
;TI" => 2;T:@format0:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass00 normal%3f-i.ri 0000644 00000000544 15241443247 0007125 0 ustar 00 U:RDoc::AnyMethod[iI"normal?:EFI"Matrix#normal?;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"0Returns +true+ is this is a normal matrix. ;TI"-Raises an error if matrix is not square.;T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass00 set_component-i.ri 0000644 00000000406 15241443247 0010211 0 ustar 00 U:RDoc::AnyMethod[iI"set_component:EFI"Matrix#set_component;TF:privateo:RDoc::Markup::Document:@parts[ :
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(i, j, v);T@FI"Matrix;TcRDoc::NormalClass0[@FI"[]=;F empty%3f-i.ri 0000644 00000000563 15241443247 0006774 0 ustar 00 U:RDoc::AnyMethod[iI"empty?:EFI"Matrix#empty?;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"KReturns +true+ if this is an empty matrix, i.e. if the number of rows ;TI"#or the number of columns is 0.;T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass00 rows-i.ri 0000644 00000000415 15241443247 0006326 0 ustar 00 U:RDoc::Attr[iI" rows:ETI"Matrix#rows;TI"R;T:protectedo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"instance creations;T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below0F@I"Matrix;TcRDoc::NormalClass0 row_size-i.ri 0000644 00000000372 15241443247 0007177 0 ustar 00 U:RDoc::AnyMethod[iI"
row_size:ETI"Matrix#row_size;TF:publico:RDoc::Markup::Document:@parts[ :
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass0[@FI"row_count;F coerce-i.ri 0000644 00000001047 15241443247 0006576 0 ustar 00 U:RDoc::AnyMethod[iI"coerce:EFI"Matrix#coerce;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [
I"@The coerce method provides support for Ruby type coercion. ;TI"BThis coercion mechanism is used by Ruby to handle mixed-type ;TI"Dnumeric operations: it is intended to find a compatible common ;TI"4type between the two operands of the operator. ;TI"See also Numeric#coerce.;T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(other);T@FI"Matrix;TcRDoc::NormalClass00 set_element-i.ri 0000644 00000000402 15241443247 0007634 0 ustar 00 U:RDoc::AnyMethod[iI"set_element:EFI"Matrix#set_element;TF:privateo:RDoc::Markup::Document:@parts[ :
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(i, j, v);T@FI"Matrix;TcRDoc::NormalClass0[@FI"[]=;F row-i.ri 0000644 00000000651 15241443247 0006145 0 ustar 00 U:RDoc::AnyMethod[iI"row:EFI"Matrix#row;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"QReturns row vector number +i+ of the matrix as a Vector (starting at 0 like ;TI"Qan array). When a block is given, the elements of that vector are iterated.;T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below00I"e;F[ I"(i);T@FI"Matrix;TcRDoc::NormalClass00 %2a-i.ri 0000644 00000000615 15241443247 0005705 0 ustar 00 U:RDoc::AnyMethod[iI"*:ETI"
Matrix#*;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"Matrix multiplication.;To:RDoc::Markup::Verbatim; [I"/Matrix[[2,4], [6,8]] * Matrix.identity(2)
;TI" => 2 4
;TI"
6 8;T:@format0:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(m);T@FI"Matrix;TcRDoc::NormalClass00 t-i.ri 0000644 00000000354 15241443247 0005601 0 ustar 00 U:RDoc::AnyMethod[iI"t:EFI"
Matrix#t;TF:publico:RDoc::Markup::Document:@parts[ :
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass0[@FI"transpose;F square%3f-i.ri 0000644 00000000464 15241443247 0007136 0 ustar 00 U:RDoc::AnyMethod[iI"square?:EFI"Matrix#square?;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"/Returns +true+ is this is a square matrix.;T:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"Matrix;TcRDoc::NormalClass00 identity-c.ri 0000644 00000000712 15241443247 0007157 0 ustar 00 U:RDoc::AnyMethod[iI"
identity:EFI"Matrix::identity;TT:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"+Creates an +n+ by +n+ identity matrix.;To:RDoc::Markup::Verbatim; [I"Matrix.identity(2)
;TI" => 1 0
;TI"
0 1;T:@format0:
@fileI"lib/matrix.rb;T:0@omit_headings_from_table_of_contents_below000[[I" unit;Fo;; [ ;
@;0[I"I;Fo;; [ ;
@;0I"(n);T@FI"Matrix;TcRDoc::NormalClass00 LUPDecomposition/u-i.ri 0000644 00000000523 15241443247 0010775 0 ustar 00 U:RDoc::AnyMethod[iI"u:EFI"Matrix::LUPDecomposition#u;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I",Returns the upper triangular factor +U+;T:
@fileI"$lib/matrix/lup_decomposition.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"LUPDecomposition;TcRDoc::NormalClass00 LUPDecomposition/to_a-i.ri 0000644 00000000472 15241443247 0011456 0 ustar 00 U:RDoc::AnyMethod[iI" to_a:ETI""Matrix::LUPDecomposition#to_a;TF:publico:RDoc::Markup::Document:@parts[ :
@fileI"$lib/matrix/lup_decomposition.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"LUPDecomposition;TcRDoc::NormalClass0[I"Matrix::LUPDecomposition;TFI"to_ary;F LUPDecomposition/to_ary-i.ri 0000644 00000000563 15241443247 0012032 0 ustar 00 U:RDoc::AnyMethod[iI"to_ary:EFI"$Matrix::LUPDecomposition#to_ary;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"&Returns +L+, +U+, +P+ in an array;T:
@fileI"$lib/matrix/lup_decomposition.rb;T:0@omit_headings_from_table_of_contents_below000[[I" to_a;To;; [ ;@;0I"();T@FI"LUPDecomposition;TcRDoc::NormalClass00 LUPDecomposition/l-i.ri 0000644 00000000406 15241443247 0010764 0 ustar 00 U:RDoc::AnyMethod[iI"l:EFI"Matrix::LUPDecomposition#l;TF:publico:RDoc::Markup::Document:@parts[ :
@fileI"$lib/matrix/lup_decomposition.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"LUPDecomposition;TcRDoc::NormalClass00 LUPDecomposition/pivots-i.ri 0000644 00000000516 15241443247 0012057 0 ustar 00 U:RDoc::Attr[iI"pivots:ETI"$Matrix::LUPDecomposition#pivots;TI"R;T:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"!Returns the pivoting indices;T:
@fileI"$lib/matrix/lup_decomposition.rb;T:0@omit_headings_from_table_of_contents_below0F@I"Matrix::LUPDecomposition;TcRDoc::NormalClass0 LUPDecomposition/new-c.ri 0000644 00000000414 15241443247 0011313 0 ustar 00 U:RDoc::AnyMethod[iI"new:ETI""Matrix::LUPDecomposition::new;TT:publico:RDoc::Markup::Document:@parts[ :
@fileI"$lib/matrix/lup_decomposition.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(a);T@FI"LUPDecomposition;TcRDoc::NormalClass00 LUPDecomposition/solve-i.ri 0000644 00000000665 15241443247 0011670 0 ustar 00 U:RDoc::AnyMethod[iI"
solve:EFI"#Matrix::LUPDecomposition#solve;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"+Returns +m+ so that A*m = b, ;TI"2or equivalently so that L*U*m = P*b ;TI"$+b+ can be a Matrix or a Vector;T:
@fileI"$lib/matrix/lup_decomposition.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(b);T@FI"LUPDecomposition;TcRDoc::NormalClass00 LUPDecomposition/determinant-i.ri 0000644 00000000505 15241443247 0013043 0 ustar 00 U:RDoc::AnyMethod[iI"determinant:ETI")Matrix::LUPDecomposition#determinant;TF:publico:RDoc::Markup::Document:@parts[ :
@fileI"$lib/matrix/lup_decomposition.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"LUPDecomposition;TcRDoc::NormalClass0[I"Matrix::LUPDecomposition;TFI"det;F LUPDecomposition/p-i.ri 0000644 00000000516 15241443247 0010772 0 ustar 00 U:RDoc::AnyMethod[iI"p:EFI"Matrix::LUPDecomposition#p;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"'Returns the permutation matrix +P+;T:
@fileI"$lib/matrix/lup_decomposition.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"LUPDecomposition;TcRDoc::NormalClass00 LUPDecomposition/cdesc-LUPDecomposition.ri 0000644 00000002364 15241443247 0014564 0 ustar 00 U:RDoc::NormalClass[iI"LUPDecomposition:ETI"Matrix::LUPDecomposition;TI"Object;To:RDoc::Markup::Document:@parts[o;;[o:RDoc::Markup::Paragraph;[ I"KFor an m-by-n matrix A with m >= n, the LU decomposition is an m-by-n ;TI"Junit lower triangular matrix L, an n-by-n upper triangular matrix U, ;TI":and a m-by-m permutation matrix P so that L*U = P*A. ;TI"0If m < n, then L is m-by-m and U is m-by-n.;To:RDoc::Markup::BlankLine o; ;[ I"NThe LUP decomposition with pivoting always exists, even if the matrix is ;TI"Ksingular, so the constructor will never fail. The primary use of the ;TI"KLU decomposition is in the solution of square systems of simultaneous ;TI"Alinear equations. This will fail if singular? returns true.;T:
@fileI"$lib/matrix/lup_decomposition.rb;T:0@omit_headings_from_table_of_contents_below0;0;0[[
I"pivots;TI"R;T:publicFI"$lib/matrix/lup_decomposition.rb;T[ [ [[I"
class;T[[;
[[I"new;T@ [:protected[ [:private[ [I"
instance;T[[;
[[I"det;F@ [I"determinant;T@ [I"l;F@ [I"p;F@ [I"singular?;F@ [I"
solve;F@ [I" to_a;T@ [I"to_ary;F@ [I"u;F@ [;[ [;[ [ [U:RDoc::Context::Section[i 0o;;[ ;0;0[@I"Matrix;TcRDoc::NormalClass LUPDecomposition/singular%3f-i.ri 0000644 00000000556 15241443247 0012661 0 ustar 00 U:RDoc::AnyMethod[iI"singular?:EFI"'Matrix::LUPDecomposition#singular?;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"7Returns +true+ if +U+, and hence +A+, is singular.;T:
@fileI"$lib/matrix/lup_decomposition.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"LUPDecomposition;TcRDoc::NormalClass00 LUPDecomposition/det-i.ri 0000644 00000000650 15241443247 0011306 0 ustar 00 U:RDoc::AnyMethod[iI"det:EFI"!Matrix::LUPDecomposition#det;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"