[cat@lazarus:~/classes/ece210-materials/2024-van-west/lessons/lesson02] $ octave GNU Octave, version 7.3.0 octave:2> x = 0:0.01:2*pi; % Create a linearly-spaced vector y = sin(x); % sin() works element-wise on vectors! y = abs(x); % same with abs()! y = x .^ 4; % element-wise power y = power(x, 4); % same as above plot(x, y); % Plot y vs. x (line graph) title('y vs. x'); octave:9> close all octave:10> octave:10> octave:10> octave:10> octave:10> y = sin(x); % sin() works element-wise on vectors! y = abs(x); % same with abs()! y = x .^ 4; % element-wise power y = power(x, 4); % same as above plot(x, y); % Plot y vs. x (line graph) title('y vs. x');^[[201~octave:10> octave:10> octave:10> octave:10> octave:10> x = 0:0.01:2*pi; % Create a linearly-spaced vector y = sin(x); % sin() works element-wise on vectors! y = abs(x); % same with abs()! y = x .^ 4; % element-wise power y = power(x, 4); % same as above plot(x, y); % Plot y vs. x (line graph) title('y vs. x'); octave:17> close all octave:18> y = x .^ 4; % element-wise power y = power(x, 4); % same as above plot(x, y); % Plot y vs. x (line graph) title('y vs. x');^[[201~octave:18> octave:18> octave:18> octave:18> x = 0:0.01:2*pi; % Create a linearly-spaced vector y = sin(x); % sin() works element-wise on vectors! y = abs(x); % same with abs()! y = x .^ 4; % element-wise power y = power(x, 4); % same as above plot(x, y); % Plot y vs. x (line graph) title('y vs. x'); octave:25> close all octave:26> octave:26> octave:26> octave:26> octave:26> octave:26> octave:26> octave:26> octave:26> x = 0:0.01:2*pi; % Create a linearly-spaced vector y = sin(x); % sin() works element-wise on vectors! y = abs(x); % same with abs()! y = x .^ 4; % element-wise power y = power(x, 4); % same as above plot(x, y); % Plot y vs. x (line graph) title('y vs. x'); octave:33> octave:33> octave:33> octave:33> octave:33> x = 0:0.01:2*pi; % Create a linearly-spaced vector y = sin(x); % sin() works element-wise on vectors! y = abs(x); % same with abs()! y = x .^ 4; % element-wise power y = power(x, 4); % same as above plot(x, y); % Plot y vs. x (line graph) title('y vs. x'); octave:40> close all octave:41> y = abs(x); % same with abs()! y = x .^ 4; % element-wise power y = power(x, 4); % same as above octave:53> x = 1:5:10 x = 1 6 octave:54> x = 1:10 x = 1 2 3 4 5 6 7 8 9 10 octave:55> x(1) ans = 1 octave:56> x(1:3) ans = 1 2 3 octave:57> x(2:7) ans = 2 3 4 5 6 7 octave:58> x = 0:9 x = 0 1 2 3 4 5 6 7 8 9 octave:59> x = linspace(0, 1, 10) x = Columns 1 through 8: 0 0.1111 0.2222 0.3333 0.4444 0.5556 0.6667 0.7778 Columns 9 and 10: 0.8889 1.0000 octave:60> x = linspace(0, 1, 10); octave:61> x = linspace(0, 1, 10).'; octave:62> x x = 0 0.1111 0.2222 0.3333 0.4444 0.5556 0.6667 0.7778 0.8889 1.0000 octave:63> x(2:6) ans = 0.1111 0.2222 0.3333 0.4444 0.5556 octave:64> x([1 3 5 7]) ans = 0 0.2222 0.4444 0.6667 octave:65> x(:) ans = 0 0.1111 0.2222 0.3333 0.4444 0.5556 0.6667 0.7778 0.8889 1.0000 octave:66> x(end) ans = 1 octave:67> x(end:-1:3) ans = 1.0000 0.8889 0.7778 0.6667 0.5556 0.4444 0.3333 0.2222 octave:68> x(end:-1:1) ans = 1.0000 0.8889 0.7778 0.6667 0.5556 0.4444 0.3333 0.2222 0.1111 0 octave:69> x(1:2:end) ans = 0 0.2222 0.4444 0.6667 0.8889 octave:70> M = 1:100; octave:71> size(M) ans = 1 100 octave:72> help reshape 'reshape' is a built-in function from the file libinterp/corefcn/data.cc -- reshape (A, M, N, ...) -- reshape (A, [M N ...]) -- reshape (A, ..., [], ...) -- reshape (A, SIZE) Return a matrix with the specified dimensions (M, N, ...) whose elements are taken from the matrix A. The elements of the matrix are accessed in column-major order (like Fortran arrays are stored). The following code demonstrates reshaping a 1x4 row vector into a 2x2 square matrix. reshape ([1, 2, 3, 4], 2, 2) => 1 3 2 4 Note that the total number of elements in the original matrix ('prod (size (A))') must match the total number of elements in the new matrix ('prod ([M N ...])'). A single dimension of the return matrix may be left unspecified and Octave will determine its size automatically. An empty matrix ([]) is used to flag the unspecified dimension. See also: resize, vec, postpad, cat, squeeze. Additional help for built-in functions and operators is available in the online version of the manual. Use the command 'doc ' to search the manual index. Help and information about Octave is also available on the WWW at https://www.octave.org and via the help@octave.org mailing list. octave:73> N1 = reshape(M, round(sqrt(100)), []) N1 = 1 11 21 31 41 51 61 71 81 91 2 12 22 32 42 52 62 72 82 92 3 13 23 33 43 53 63 73 83 93 4 14 24 34 44 54 64 74 84 94 5 15 25 35 45 55 65 75 85 95 6 16 26 36 46 56 66 76 86 96 7 17 27 37 47 57 67 77 87 97 8 18 28 38 48 58 68 78 88 98 9 19 29 39 49 59 69 79 89 99 10 20 30 40 50 60 70 80 90 100 octave:74> N1 N1 = 1 11 21 31 41 51 61 71 81 91 2 12 22 32 42 52 62 72 82 92 3 13 23 33 43 53 63 73 83 93 4 14 24 34 44 54 64 74 84 94 5 15 25 35 45 55 65 75 85 95 6 16 26 36 46 56 66 76 86 96 7 17 27 37 47 57 67 77 87 97 8 18 28 38 48 58 68 78 88 98 9 19 29 39 49 59 69 79 89 99 10 20 30 40 50 60 70 80 90 100 octave:75> N1(:, :) ans = 1 11 21 31 41 51 61 71 81 91 2 12 22 32 42 52 62 72 82 92 3 13 23 33 43 53 63 73 83 93 4 14 24 34 44 54 64 74 84 94 5 15 25 35 45 55 65 75 85 95 6 16 26 36 46 56 66 76 86 96 7 17 27 37 47 57 67 77 87 97 8 18 28 38 48 58 68 78 88 98 9 19 29 39 49 59 69 79 89 99 10 20 30 40 50 60 70 80 90 100 octave:76> N1(1:3, :) ans = 1 11 21 31 41 51 61 71 81 91 2 12 22 32 42 52 62 72 82 92 3 13 23 33 43 53 63 73 83 93 octave:77> N1(1:3, 2:6) ans = 11 21 31 41 51 12 22 32 42 52 13 23 33 43 53 octave:78> N1(1:3, 1:3) ans = 1 11 21 2 12 22 3 13 23 octave:79> N1(end-3:end) ans = 97 98 99 100 octave:83> Display all 1790 possibilities? (y or n) abs accumarray __accumarray_max__ __accumarray_min__ __accumarray_sum__ accumdim octave:84> x = 3 x = 3 octave:85> x = [1 2 3]; octave:86> x = 0:15 x = Columns 1 through 15: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Column 16: 15 octave:87> y = x.^2 y = Columns 1 through 13: 0 1 4 9 16 25 36 49 64 81 100 121 144 Columns 14 through 16: 169 196 225 octave:88> x x = Columns 1 through 15: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Column 16: 15 octave:89> xt = x.' xt = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 octave:90> x = (1:9).' x = 1 2 3 4 5 6 7 8 9 octave:91> sin(x) ans = 0.8415 0.9093 0.1411 -0.7568 -0.9589 -0.2794 0.6570 0.9894 0.4121 octave:92> rad2deg(pi/2) ans = 90 octave:93> length(x) ans = 9 octave:94> mean(x) ans = 5 octave:95> x x = 1 2 3 4 5 6 7 8 9 octave:96> mean(sin(x)) ans = 0.2172 octave:97> ^[[200~T = 1e-6; % Sampling period (s) t = 0:T:2e-3; % Time (domain/x-axis) f0 = 50; % Initial frequency (Hz) b = 10e6; % Chirp rate (Hz/s) A = 10; % Amplitude y1 = A * cos(2*pi*f0*t + pi*b*t.^2); figure; plot(t,y1);^[[201~octave:97> octave:97> octave:97> octave:97> octave:97> T = 1e-6; % Sampling period (s) t = 0:T:2e-3; % Time (domain/x-axis) f0 = 50; % Initial frequency (Hz) b = 10e6; % Chirp rate (Hz/s) A = 10; % Amplitude y1 = A * cos(2*pi*f0*t + pi*b*t.^2); figure; plot(t,y1); octave:105> close all octave:109> x = linspace(0, 1, 9) x = Columns 1 through 8: 0 0.1250 0.2500 0.3750 0.5000 0.6250 0.7500 0.8750 Column 9: 1.0000 octave:110> x = linspace(0, 1, 9).' x = 0 0.1250 0.2500 0.3750 0.5000 0.6250 0.7500 0.8750 1.0000 octave:111> x(1) ans = 0 octave:112> x(9) ans = 1 octave:113> x(10) error: x(10): out of bound 9 (dimensions are 9x1) octave:114> x(5) ans = 0.5000 octave:115> x([1 2 3]) ans = 0 0.1250 0.2500 octave:116> x([1 3 2]) ans = 0 0.2500 0.1250 octave:117> x(1:9) ans = 0 0.1250 0.2500 0.3750 0.5000 0.6250 0.7500 0.8750 1.0000 octave:118> x(1:end) ans = 0 0.1250 0.2500 0.3750 0.5000 0.6250 0.7500 0.8750 1.0000 octave:119> x(end) ans = 1 octave:120> x(3:end) ans = 0.2500 0.3750 0.5000 0.6250 0.7500 0.8750 1.0000 octave:121> x(end:-1:1) ans = 1.0000 0.8750 0.7500 0.6250 0.5000 0.3750 0.2500 0.1250 0 octave:122> 9:-1:1 ans = 9 8 7 6 5 4 3 2 1 octave:123> 9:-.5:1 ans = Columns 1 through 7: 9.0000 8.5000 8.0000 7.5000 7.0000 6.5000 6.0000 Columns 8 through 14: 5.5000 5.0000 4.5000 4.0000 3.5000 3.0000 2.5000 Columns 15 through 17: 2.0000 1.5000 1.0000 octave:124> x(:) ans = 0 0.1250 0.2500 0.3750 0.5000 0.6250 0.7500 0.8750 1.0000 octave:125> A = [1 2; 3 4] A = 1 2 3 4 octave:126> A(:) ans = 1 3 2 4 octave:127> z = 4 z = 4 octave:128> z(1) ans = 4 octave:129> inc error: 'inc' undefined near line 1, column 1 octave:130> a++ error: in x++ or ++x, x must be defined first octave:131> ++x ans = 1.0000 1.1250 1.2500 1.3750 1.5000 1.6250 1.7500 1.8750 2.0000 octave:132> M = reshape(1:100, 10, 10) M = 1 11 21 31 41 51 61 71 81 91 2 12 22 32 42 52 62 72 82 92 3 13 23 33 43 53 63 73 83 93 4 14 24 34 44 54 64 74 84 94 5 15 25 35 45 55 65 75 85 95 6 16 26 36 46 56 66 76 86 96 7 17 27 37 47 57 67 77 87 97 8 18 28 38 48 58 68 78 88 98 9 19 29 39 49 59 69 79 89 99 10 20 30 40 50 60 70 80 90 100 octave:133> M(1, 1) ans = 1 octave:134> M(10, 10) ans = 100 octave:135> M(end, end) ans = 100 octave:136> M(end, 1) ans = 10 octave:137> M(1, end) ans = 91 octave:138> M(1:3, :) ans = 1 11 21 31 41 51 61 71 81 91 2 12 22 32 42 52 62 72 82 92 3 13 23 33 43 53 63 73 83 93 octave:139> M(1:3, 2:5) ans = 11 21 31 41 12 22 32 42 13 23 33 43 octave:140> M([1 3 5 7], 2:5) ans = 11 21 31 41 13 23 33 43 15 25 35 45 17 27 37 47 octave:141> x x = 1.0000 1.1250 1.2500 1.3750 1.5000 1.6250 1.7500 1.8750 2.0000 octave:142> x(1:5) ans = 1.0000 1.1250 1.2500 1.3750 1.5000 octave:143> x(1:5) = 1:5 x = 1.0000 2.0000 3.0000 4.0000 5.0000 1.6250 1.7500 1.8750 2.0000 octave:144> x(6:end) = x(6:end).^2 x = 1.0000 2.0000 3.0000 4.0000 5.0000 2.6406 3.0625 3.5156 4.0000 octave:145> M M = 1 11 21 31 41 51 61 71 81 91 2 12 22 32 42 52 62 72 82 92 3 13 23 33 43 53 63 73 83 93 4 14 24 34 44 54 64 74 84 94 5 15 25 35 45 55 65 75 85 95 6 16 26 36 46 56 66 76 86 96 7 17 27 37 47 57 67 77 87 97 8 18 28 38 48 58 68 78 88 98 9 19 29 39 49 59 69 79 89 99 10 20 30 40 50 60 70 80 90 100 octave:146> M(3:6, 3:6) = 0 M = 1 11 21 31 41 51 61 71 81 91 2 12 22 32 42 52 62 72 82 92 3 13 0 0 0 0 63 73 83 93 4 14 0 0 0 0 64 74 84 94 5 15 0 0 0 0 65 75 85 95 6 16 0 0 0 0 66 76 86 96 7 17 27 37 47 57 67 77 87 97 8 18 28 38 48 58 68 78 88 98 9 19 29 39 49 59 69 79 89 99 10 20 30 40 50 60 70 80 90 100 octave:147> x x = 1.0000 2.0000 3.0000 4.0000 5.0000 2.6406 3.0625 3.5156 4.0000 octave:148> x = 1:9.' x = 1 2 3 4 5 6 7 8 9 octave:149> x = (1:9).' x = 1 2 3 4 5 6 7 8 9 octave:150> reshape(x, 3, 3) ans = 1 4 7 2 5 8 3 6 9 octave:151> x = 1:9 x = 1 2 3 4 5 6 7 8 9 octave:152> reshape(x, 3, 3) ans = 1 4 7 2 5 8 3 6 9 octave:153> x x = 1 2 3 4 5 6 7 8 9 octave:154> xm = reshape(x, 3, 3) xm = 1 4 7 2 5 8 3 6 9 octave:155> xm(1, 1) ans = 1 octave:156> xm(1) ans = 1 octave:157> xm(2) ans = 2 octave:158> xm(3) ans = 3 octave:159> xm(4) ans = 4 octave:160> xm xm = 1 4 7 2 5 8 3 6 9 octave:161> reshape(xm, 9, 1) ans = 1 2 3 4 5 6 7 8 9 octave:162> mx error: 'mx' undefined near line 1, column 1 octave:163> xm xm = 1 4 7 2 5 8 3 6 9 octave:164> reshape(xm, 9, 1) ans = 1 2 3 4 5 6 7 8 9 octave:165> reshape(xm, 9, []) ans = 1 2 3 4 5 6 7 8 9 octave:166> reshape(xm, 3, []) ans = 1 4 7 2 5 8 3 6 9 octave:167> xm xm = 1 4 7 2 5 8 3 6 9 octave:168> xm(2, :) = [] xm = 1 4 7 3 6 9 octave:169> magic(4) ans = 16 2 3 13 5 11 10 8 9 7 6 12 4 14 15 1 octave:170> sum(magic(4)) ans = 34 34 34 34 octave:171> sum(magic(4), 2) ans = 34 34 34 34 octave:172> ^[[200~lo = -2; hi = 2; N = 1e2; x = linspace(lo, hi, N); y = x.^2; plot(x, y); title('x^2');^[[201~octave:172> octave:172> octave:172> octave:172> octave:172> lo = -2; hi = 2; N = 1e2; x = linspace(lo, hi, N); y = x.^2; plot(x, y); title('x^2'); octave:179> close all octave:180> diff(x) ans = Columns 1 through 7: 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 Columns 8 through 14: 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 Columns 15 through 21: 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 Columns 22 through 28: 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 Columns 29 through 35: 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 Columns 36 through 42: 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 Columns 43 through 49: 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 Columns 50 through 56: 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 Columns 57 through 63: 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 Columns 64 through 70: 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 Columns 71 through 77: 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 Columns 78 through 84: 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 Columns 85 through 91: 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 Columns 92 through 98: 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 0.040404 Column 99: 0.040404 octave:181> diff(y) ans = Columns 1 through 8: -0.1600 -0.1567 -0.1535 -0.1502 -0.1469 -0.1437 -0.1404 -0.1371 Columns 9 through 16: -0.1339 -0.1306 -0.1273 -0.1241 -0.1208 -0.1175 -0.1143 -0.1110 Columns 17 through 24: -0.1077 -0.1045 -0.1012 -0.0979 -0.0947 -0.0914 -0.0882 -0.0849 Columns 25 through 32: -0.0816 -0.0784 -0.0751 -0.0718 -0.0686 -0.0653 -0.0620 -0.0588 Columns 33 through 40: -0.0555 -0.0522 -0.0490 -0.0457 -0.0424 -0.0392 -0.0359 -0.0326 Columns 41 through 48: -0.0294 -0.0261 -0.0229 -0.0196 -0.0163 -0.0131 -0.0098 -0.0065 Columns 49 through 56: -0.0033 0 0.0033 0.0065 0.0098 0.0131 0.0163 0.0196 Columns 57 through 64: 0.0229 0.0261 0.0294 0.0326 0.0359 0.0392 0.0424 0.0457 Columns 65 through 72: 0.0490 0.0522 0.0555 0.0588 0.0620 0.0653 0.0686 0.0718 Columns 73 through 80: 0.0751 0.0784 0.0816 0.0849 0.0882 0.0914 0.0947 0.0979 Columns 81 through 88: 0.1012 0.1045 0.1077 0.1110 0.1143 0.1175 0.1208 0.1241 Columns 89 through 96: 0.1273 0.1306 0.1339 0.1371 0.1404 0.1437 0.1469 0.1502 Columns 97 through 99: 0.1535 0.1567 0.1600 octave:182> diff(y)./diff(x) ans = Columns 1 through 8: -3.9596 -3.8788 -3.7980 -3.7172 -3.6364 -3.5556 -3.4747 -3.3939 Columns 9 through 16: -3.3131 -3.2323 -3.1515 -3.0707 -2.9899 -2.9091 -2.8283 -2.7475 Columns 17 through 24: -2.6667 -2.5859 -2.5051 -2.4242 -2.3434 -2.2626 -2.1818 -2.1010 Columns 25 through 32: -2.0202 -1.9394 -1.8586 -1.7778 -1.6970 -1.6162 -1.5354 -1.4545 Columns 33 through 40: -1.3737 -1.2929 -1.2121 -1.1313 -1.0505 -0.9697 -0.8889 -0.8081 Columns 41 through 48: -0.7273 -0.6465 -0.5657 -0.4848 -0.4040 -0.3232 -0.2424 -0.1616 Columns 49 through 56: -0.0808 0 0.0808 0.1616 0.2424 0.3232 0.4040 0.4848 Columns 57 through 64: 0.5657 0.6465 0.7273 0.8081 0.8889 0.9697 1.0505 1.1313 Columns 65 through 72: 1.2121 1.2929 1.3737 1.4545 1.5354 1.6162 1.6970 1.7778 Columns 73 through 80: 1.8586 1.9394 2.0202 2.1010 2.1818 2.2626 2.3434 2.4242 Columns 81 through 88: 2.5051 2.5859 2.6667 2.7475 2.8283 2.9091 2.9899 3.0707 Columns 89 through 96: 3.1515 3.2323 3.3131 3.3939 3.4747 3.5556 3.6364 3.7172 Columns 97 through 99: 3.7980 3.8788 3.9596 octave:183> ^[[200~figure(); plot(x(1:end-1), dydx);^[[201~octave:183> octave:183> octave:183> octave:183> octave:183> figure(); plot(x(1:end-1), dydx); error: 'dydx' undefined near line 1, column 18 octave:201> xdiff = diff(x); octave:202> dx = xdiff(1); octave:203> dx dx = 0.040404 octave:204> int_of_y = sum(y)*dx int_of_y = 5.4960 octave:205> Y = cumsum(y)*dx Y = Columns 1 through 8: 0.1616 0.3168 0.4656 0.6082 0.7448 0.8754 1.0002 1.1193 Columns 9 through 16: 1.2329 1.3411 1.4440 1.5418 1.6345 1.7224 1.8055 1.8841 Columns 17 through 24: 1.9581 2.0277 2.0932 2.1546 2.2120 2.2655 2.3154 2.3617 Columns 25 through 32: 2.4046 2.4442 2.4806 2.5140 2.5445 2.5722 2.5973 2.6199 Columns 33 through 40: 2.6401 2.6581 2.6739 2.6878 2.6998 2.7101 2.7188 2.7261 Columns 41 through 48: 2.7320 2.7368 2.7405 2.7433 2.7453 2.7466 2.7474 2.7479 Columns 49 through 56: 2.7480 2.7480 2.7480 2.7482 2.7486 2.7494 2.7507 2.7527 Columns 57 through 64: 2.7555 2.7592 2.7640 2.7700 2.7772 2.7859 2.7963 2.8083 Columns 65 through 72: 2.8221 2.8380 2.8559 2.8761 2.8987 2.9238 2.9515 2.9820 Columns 73 through 80: 3.0154 3.0518 3.0914 3.1343 3.1806 3.2305 3.2841 3.3415 Columns 81 through 88: 3.4028 3.4683 3.5380 3.6120 3.6905 3.7736 3.8615 3.9542 Columns 89 through 96: 4.0520 4.1549 4.2631 4.3767 4.4959 4.6207 4.7513 4.8878 Columns 97 through 100: 5.0304 5.1793 5.3344 5.4960 octave:206> figure octave:207> hold on octave:208> plot(x, y) octave:209> plot(x, Y) octave:210> close all octave:211> help cumtrapz 'cumtrapz' is a function from the file /usr/share/octave/7.3.0/m/general/cumtr apz.m -- Q = cumtrapz (Y) -- Q = cumtrapz (X, Y) -- Q = cumtrapz (..., DIM) Cumulative numerical integration of points Y using the trapezoidal method. 'cumtrapz (Y)' computes the cumulative integral of Y along the first non-singleton dimension. Where 'trapz' reports only the overall integral sum, 'cumtrapz' reports the current partial sum value at each point of Y. When the argument X is omitted an equally spaced X vector with unit spacing (1) is assumed. 'cumtrapz (X, Y)' evaluates the integral with respect to the spacing in X and the values in Y. This is useful if the points in Y have been sampled unevenly. If the optional DIM argument is given, operate along this dimension. Application Note: If X is not specified then unit spacing will be used. To scale the integral to the correct value you must multiply by the actual spacing value (deltaX). See also: trapz, cumsum. Additional help for built-in functions and operators is available in the online version of the manual. Use the command 'doc ' to search the manual index. Help and information about Octave is also available on the WWW at https://www.octave.org and via the help@octave.org mailing list. octave:212> help trapz= error: help: 'trapz=' not found octave:213> help trapz 'trapz' is a function from the file /usr/share/octave/7.3.0/m/general/trapz.m -- Q = trapz (Y) -- Q = trapz (X, Y) -- Q = trapz (..., DIM) Numerically evaluate the integral of points Y using the trapezoidal method. 'trapz (Y)' computes the integral of Y along the first non-singleton dimension. When the argument X is omitted an equally spaced X vector with unit spacing (1) is assumed. 'trapz (X, Y)' evaluates the integral with respect to the spacing in X and the values in Y. This is useful if the points in Y have been sampled unevenly. If the optional DIM argument is given, operate along this dimension. Application Note: If X is not specified then unit spacing will be used. To scale the integral to the correct value you must multiply by the actual spacing value (deltaX). As an example, the integral of x^3 over the range [0, 1] is x^4/4 or 0.25. The following code uses 'trapz' to calculate the integral in three different ways. x = 0:0.1:1; y = x.^3; ## No scaling q = trapz (y) => q = 2.5250 ## Approximation to integral by scaling q * 0.1 => 0.25250 ## Same result by specifying X trapz (x, y) => 0.25250 See also: cumtrapz. Additional help for built-in functions and operators is available in the online version of the manual. Use the command 'doc ' to search the manual index. Help and information about Octave is also available on the WWW at https://www.octave.org and via the help@octave.org mailing list. octave:214> trapz(x, y) ans = 5.3344 octave:215> cmutrapz(x, y) error: 'cmutrapz' undefined near line 1, column 1 octave:216> cumtrapz(x, y) ans = Columns 1 through 8: 0 0.1584 0.3104 0.4561 0.5957 0.7293 0.8570 0.9789 Columns 9 through 16: 1.0953 1.2062 1.3118 1.4121 1.5074 1.5977 1.6832 1.7640 Columns 17 through 24: 1.8403 1.9121 1.9797 2.0431 2.1024 2.1579 2.2097 2.2578 Columns 25 through 32: 2.3024 2.3436 2.3816 2.4165 2.4485 2.4776 2.5040 2.5278 Columns 33 through 40: 2.5492 2.5683 2.5852 2.6000 2.6130 2.6241 2.6336 2.6416 Columns 41 through 48: 2.6483 2.6536 2.6579 2.6611 2.6635 2.6652 2.6662 2.6668 Columns 49 through 56: 2.6671 2.6672 2.6672 2.6673 2.6676 2.6682 2.6693 2.6709 Columns 57 through 64: 2.6733 2.6766 2.6808 2.6862 2.6928 2.7008 2.7103 2.7215 Columns 65 through 72: 2.7344 2.7493 2.7662 2.7852 2.8066 2.8305 2.8569 2.8860 Columns 73 through 80: 2.9179 2.9528 2.9908 3.0321 3.0767 3.1248 3.1765 3.2320 Columns 81 through 88: 3.2914 3.3548 3.4223 3.4942 3.5704 3.6512 3.7367 3.8271 Columns 89 through 96: 3.9223 4.0227 4.1282 4.2391 4.3555 4.4774 4.6052 4.7387 Columns 97 through 100: 4.8783 5.0241 5.1760 5.3344 octave:217> Y = cumtrapz(x, y) Y = Columns 1 through 8: 0 0.1584 0.3104 0.4561 0.5957 0.7293 0.8570 0.9789 Columns 9 through 16: 1.0953 1.2062 1.3118 1.4121 1.5074 1.5977 1.6832 1.7640 Columns 17 through 24: 1.8403 1.9121 1.9797 2.0431 2.1024 2.1579 2.2097 2.2578 Columns 25 through 32: 2.3024 2.3436 2.3816 2.4165 2.4485 2.4776 2.5040 2.5278 Columns 33 through 40: 2.5492 2.5683 2.5852 2.6000 2.6130 2.6241 2.6336 2.6416 Columns 41 through 48: 2.6483 2.6536 2.6579 2.6611 2.6635 2.6652 2.6662 2.6668 Columns 49 through 56: 2.6671 2.6672 2.6672 2.6673 2.6676 2.6682 2.6693 2.6709 Columns 57 through 64: 2.6733 2.6766 2.6808 2.6862 2.6928 2.7008 2.7103 2.7215 Columns 65 through 72: 2.7344 2.7493 2.7662 2.7852 2.8066 2.8305 2.8569 2.8860 Columns 73 through 80: 2.9179 2.9528 2.9908 3.0321 3.0767 3.1248 3.1765 3.2320 Columns 81 through 88: 3.2914 3.3548 3.4223 3.4942 3.5704 3.6512 3.7367 3.8271 Columns 89 through 96: 3.9223 4.0227 4.1282 4.2391 4.3555 4.4774 4.6052 4.7387 Columns 97 through 100: 4.8783 5.0241 5.1760 5.3344 octave:218>