A=rand(5,6) A = 0.9501 0.7621 0.6154 0.4057 0.0579 0.2028 0.2311 0.4565 0.7919 0.9355 0.3529 0.1987 0.6068 0.0185 0.9218 0.9169 0.8132 0.6038 0.4860 0.8214 0.7382 0.4103 0.0099 0.2722 0.8913 0.4447 0.1763 0.8936 0.1389 0.1988 B=[1 -2 4;1 6 7;1 0 5] B = 1 -2 4 1 6 7 1 0 5 svd(A) ans = 2.9659 1.0658 0.6916 0.4881 0.1202 svd(B) ans = 10.4705 4.8340 0.0395 cond(B) ans = 264.9773 help cond COND Condition number with respect to inversion. COND(X) returns the 2-norm condition number (the ratio of the largest singular value of X to the smallest). Large condition numbers indicate a nearly singular matrix. COND(X,P) returns the condition number of X in P-norm: NORM(X,P) * NORM(INV(X),P). where P = 1, 2, inf, or 'fro.' See also CONDEST, CONDEIG, NORM, NORMEST. cond(B,1) ans = 392 cond(B,inf) ans = 546 cond(B,'fro') ans = 291.8673 help svd SVD Singular value decomposition. [U,S,V] = SVD(X) produces a diagonal matrix S, of the same dimension as X and with nonnegative diagonal elements in decreasing order, and unitary matrices U and V so that X = U*S*V'. S = SVD(X) returns a vector containing the singular values. [U,S,V] = SVD(X,0) produces the "economy size" decomposition. If X is m-by-n with m > n, then only the first n columns of U are computed and S is n-by-n. See also SVDS, GSVD. [U,S,V]=svd(B) U = 0.2682 -0.7491 0.6057 0.8586 0.4710 0.2024 0.4369 -0.4658 -0.7695 S = 10.4705 0 0 0 4.8340 0 0 0 0.0395 V = 0.1493 -0.1539 0.9767 0.4408 0.8946 0.0735 0.8851 -0.4195 -0.2014 B - U*S*V' ans = 1.0e-014 * 0.0111 0 0.0888 0.0444 0.2665 0.6217 0 0.1438 0.2665 [U,S,V]=svd(A) U = 0.4414 -0.5206 0.0193 -0.4329 0.5885 0.4386 0.2312 -0.3558 0.6878 0.3932 0.5313 0.6945 0.0714 -0.4628 -0.1269 0.3975 -0.3864 -0.5271 -0.0284 -0.6435 0.4154 -0.2095 0.7682 0.3530 -0.2624 S = 2.9659 0 0 0 0 0 0 1.0658 0 0 0 0 0 0 0.6916 0 0 0 0 0 0 0.4881 0 0 0 0 0 0 0.1202 0 V = 0.4743 -0.3699 0.5898 -0.4761 0.2198 -0.1239 0.3566 -0.6464 -0.3437 0.2235 -0.1631 0.5102 0.4975 0.1696 -0.6619 -0.2194 0.2939 -0.3888 0.5431 0.2778 0.3046 0.7113 -0.0690 -0.1561 0.2272 0.5473 0.0508 -0.2252 0.2231 0.7388 0.2321 0.1997 -0.0209 -0.3443 -0.8855 -0.0554 B B = 1 -2 4 1 6 7 1 0 5 B(2:3,[1,3]) ans = 1 7 1 5 pi:-0.1:2 ans = Columns 1 through 7 3.1416 3.0416 2.9416 2.8416 2.7416 2.6416 2.5416 Columns 8 through 12 2.4416 2.3416 2.2416 2.1416 2.0416 pi:0.1:4 ans = Columns 1 through 7 3.1416 3.2416 3.3416 3.4416 3.5416 3.6416 3.7416 Columns 8 through 9 3.8416 3.9416 help colon : Colon. J:K is the same as [J, J+1, ..., K]. J:K is empty if J > K. J:D:K is the same as [J, J+D, ..., J+m*D] where m = fix((K-J)/D). J:D:K is empty if D > 0 and J > K or if D < 0 and J < K. COLON(J,K) is the same as J:K and COLON(J,D,K) is the same as J:D:K. The colon notation can be used to pick out selected rows, columns and elements of vectors, matrices, and arrays. A(:) is all the elements of A, regarded as a single column. On the left side of an assignment statement, A(:) fills A, preserving its shape from before. A(:,J) is the J-th column of A. A(J:K) is [A(J),A(J+1),...,A(K)]. A(:,J:K) is [A(:,J),A(:,J+1),...,A(:,K)] and so on. The colon notation can be used with a cell array to produce a comma- separated list. C{:} is the same as C{1},C{2},...,C{end}. The comma separated list syntax is valid inside () for function calls, [] for concatenation and function return arguments, and inside {} to produce a cell array. Expressions such as S(:).name produce the comma separated list S(1).name,S(2).name,...,S(end).name for the structure S. For the use of the colon in the FOR statement, See FOR. For the use of the colon in a comma separated list, See VARARGIN. inv(A) ??? Error using ==> inv Matrix must be square. inv(B) ans = 15.0000 5.0000 -19.0000 1.0000 0.5000 -1.5000 -3.0000 -1.0000 4.0000 ans*B ans = 1 0 0 0 1 0 0 0 1 c=1:4 c = 1 2 3 4 d=4:-1:1 d = 4 3 2 1 c.*d ans = 4 6 6 4 ls ../mfiles ../mfiles not found. ls ../../mfiles . .. afosr capon narcfun pbf_wav ls ../../mfiles/narcfun . CHECK.M DEMO_LAG.M Mod2.m PBF_EVAL.M SITE_DIS.M .. CREATEFN.M EQSP_CEN.M NEW_LAG.M PLOT_APD.M WAVIAN.M ADJ_PHD.M DEMO_BL.M LAGRANGE.M NEW_POLY.M POLY_PBF.M round_off.m BUTLER.M DEMO_BRC.M LAG_INT.M OLS_CENT.M RESIDUAL.M round_off ??? Undefined function or variable 'round_off'. type round_off ??? Error using ==> type round_off.m: File not found. path MATLABPATH C:\mfiles\pbf_wav C:\mfiles\capon C:\mfiles\afosr C:\mfiles C:\MATLABR11\toolbox\matlab\general C:\MATLABR11\toolbox\matlab\ops C:\MATLABR11\toolbox\matlab\lang C:\MATLABR11\toolbox\matlab\elmat C:\MATLABR11\toolbox\matlab\elfun C:\MATLABR11\toolbox\matlab\specfun C:\MATLABR11\toolbox\matlab\matfun C:\MATLABR11\toolbox\matlab\datafun C:\MATLABR11\toolbox\matlab\polyfun C:\MATLABR11\toolbox\matlab\funfun C:\MATLABR11\toolbox\matlab\sparfun C:\MATLABR11\toolbox\matlab\graph2d C:\MATLABR11\toolbox\matlab\graph3d C:\MATLABR11\toolbox\matlab\specgraph C:\MATLABR11\toolbox\matlab\graphics C:\MATLABR11\toolbox\matlab\uitools C:\MATLABR11\toolbox\matlab\strfun C:\MATLABR11\toolbox\matlab\iofun C:\MATLABR11\toolbox\matlab\timefun C:\MATLABR11\toolbox\matlab\datatypes C:\MATLABR11\toolbox\matlab\winfun C:\MATLABR11\toolbox\matlab\demos C:\MATLABR11\toolbox\wavelet\wavelet C:\MATLABR11\toolbox\wavelet\wavedemo C:\MATLABR11\work C:\MATLABR11\toolbox\local fplot('sin(3*x)',[-pi,pi]) quit