Create square marix of values for a 2 variable function.

3 ビュー (過去 30 日間)
Fernando
Fernando 2023 年 7 月 3 日
コメント済み: Torsten 2023 年 7 月 3 日
Hello,
I have a two variable function for a given domain i.e. f(x,y) for 0<x<100, 0<y<100 and x and y are discretized I want to form a square matrix where in the columns x remains constant and y varies or vices-versa. I have used the function command to create my function but I am struggling in the next part.
x= 0:0.01:100; y= 0:0.01:100;
function f = f(x,y)
f = cos(x)+sin(y);
end

採用された回答

Matt J
Matt J 2023 年 7 月 3 日
x= 0:0.01:100; y=(0:0.01:100)';
f=cos(x)+sin(y)
f = 10001×10001
1.0000 1.0000 0.9998 0.9996 0.9992 0.9988 0.9982 0.9976 0.9968 0.9960 0.9950 0.9940 0.9928 0.9916 0.9902 0.9888 0.9872 0.9856 0.9838 0.9820 0.9801 0.9780 0.9759 0.9737 0.9713 0.9689 0.9664 0.9638 0.9611 0.9582 1.0100 1.0099 1.0098 1.0095 1.0092 1.0088 1.0082 1.0076 1.0068 1.0060 1.0050 1.0040 1.0028 1.0016 1.0002 0.9988 0.9972 0.9956 0.9938 0.9920 0.9901 0.9880 0.9859 0.9837 0.9813 0.9789 0.9764 0.9738 0.9711 0.9682 1.0200 1.0199 1.0198 1.0195 1.0192 1.0187 1.0182 1.0175 1.0168 1.0160 1.0150 1.0140 1.0128 1.0116 1.0102 1.0088 1.0072 1.0056 1.0038 1.0020 1.0001 0.9980 0.9959 0.9937 0.9913 0.9889 0.9864 0.9838 0.9811 0.9782 1.0300 1.0299 1.0298 1.0295 1.0292 1.0287 1.0282 1.0275 1.0268 1.0259 1.0250 1.0240 1.0228 1.0216 1.0202 1.0188 1.0172 1.0156 1.0138 1.0120 1.0101 1.0080 1.0059 1.0037 1.0013 0.9989 0.9964 0.9938 0.9911 0.9882 1.0400 1.0399 1.0398 1.0395 1.0392 1.0387 1.0382 1.0375 1.0368 1.0359 1.0350 1.0339 1.0328 1.0316 1.0302 1.0288 1.0272 1.0256 1.0238 1.0220 1.0201 1.0180 1.0159 1.0137 1.0113 1.0089 1.0064 1.0038 1.0010 0.9982 1.0500 1.0499 1.0498 1.0495 1.0492 1.0487 1.0482 1.0475 1.0468 1.0459 1.0450 1.0439 1.0428 1.0415 1.0402 1.0388 1.0372 1.0356 1.0338 1.0320 1.0300 1.0280 1.0259 1.0236 1.0213 1.0189 1.0164 1.0138 1.0110 1.0082 1.0600 1.0599 1.0598 1.0595 1.0592 1.0587 1.0582 1.0575 1.0568 1.0559 1.0550 1.0539 1.0528 1.0515 1.0502 1.0487 1.0472 1.0455 1.0438 1.0420 1.0400 1.0380 1.0359 1.0336 1.0313 1.0289 1.0264 1.0237 1.0210 1.0182 1.0699 1.0699 1.0697 1.0695 1.0691 1.0687 1.0681 1.0675 1.0667 1.0659 1.0649 1.0639 1.0628 1.0615 1.0602 1.0587 1.0572 1.0555 1.0538 1.0519 1.0500 1.0480 1.0458 1.0436 1.0413 1.0389 1.0363 1.0337 1.0310 1.0282 1.0799 1.0799 1.0797 1.0795 1.0791 1.0787 1.0781 1.0775 1.0767 1.0759 1.0749 1.0739 1.0727 1.0715 1.0701 1.0687 1.0671 1.0655 1.0638 1.0619 1.0600 1.0579 1.0558 1.0536 1.0513 1.0488 1.0463 1.0437 1.0410 1.0382 1.0899 1.0898 1.0897 1.0894 1.0891 1.0886 1.0881 1.0874 1.0867 1.0858 1.0849 1.0838 1.0827 1.0814 1.0801 1.0786 1.0771 1.0755 1.0737 1.0719 1.0699 1.0679 1.0658 1.0635 1.0612 1.0588 1.0563 1.0536 1.0509 1.0481
  3 件のコメント
Matt J
Matt J 2023 年 7 月 3 日
There is no tilde in the code I posted for you, I don't think...
Torsten
Torsten 2023 年 7 月 3 日
Apostrophe means "transposed". So you "add" an (1xn) and an (nx1) vector in the above code. In MATLAB, by implicit expansion, this gives an (nxn) matrix.
Example:
x = [1 2];
y = [7;4];
x + y
ans = 2×2
8 9 5 6
[1+7 2+7;
1+4 2+4]
ans = 2×2
8 9 5 6

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

製品


リリース

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by