MATLAB
Sejauh ini, kita telah melihat bahwa semua contoh bekerja di MATLAB serta GNU-nya, atau disebut Oktaf. Tetapi untuk menyelesaikan persamaan aljabar dasar, MATLAB dan Oktaf sedikit berbeda, jadi kami akan mencoba membahas MATLAB dan Oktaf di bagian terpisah.
Kami juga akan membahas faktorisasi dan penyederhanaan ekspresi aljabar.
menyelesaikan fungsi yang digunakan untuk menyelesaikan persamaan aljabar. Dalam bentuknya yang paling sederhana, fungsi solve mengambil persamaan yang diapit tanda kutip sebagai argumen.
Sebagai contoh, mari kita selesaikan untuk x dalam persamaan x-5 =0
solve('x-5=0')
MATLAB akan mengeksekusi pernyataan di atas dan mengembalikan hasil berikut
ans = 5
Anda juga dapat memanggil fungsi penyelesaian sebagai −
y = solve('x-5 = 0')
MATLAB akan mengeksekusi pernyataan di atas dan mengembalikan hasil berikut
y = 5
Anda bahkan mungkin tidak memasukkan ruas kanan persamaan −
solve('x-5')
MATLAB akan mengeksekusi pernyataan di atas dan mengembalikan hasil berikut
ans = 5
Jika persamaan melibatkan banyak simbol, maka MATLAB secara default mengasumsikan bahwa Anda menyelesaikan x, namun, fungsi penyelesaian memiliki bentuk lain
solve(equation, variable)
di mana, Anda juga dapat menyebutkan variabelnya.
Sebagai contoh, mari kita selesaikan persamaan v – u – 3t 2 =0, untuk v. Dalam hal ini, kita harus menulis
solve('v-u-3*t^2=0', 'v')
MATLAB akan mengeksekusi pernyataan di atas dan mengembalikan hasil berikut
ans = 3*t^2 + u
akar fungsi digunakan untuk menyelesaikan persamaan aljabar dalam Oktaf dan Anda dapat menulis contoh di atas sebagai berikut −
Sebagai contoh, mari kita selesaikan untuk x dalam persamaan x-5 =0
Demo Langsungroots([1, -5])
Oktaf akan mengeksekusi pernyataan di atas dan mengembalikan hasil berikut
ans = 5
Anda juga dapat memanggil fungsi penyelesaian sebagai −
Demo Langsungy = roots([1, -5])
Oktaf akan mengeksekusi pernyataan di atas dan mengembalikan hasil berikut
y = 5
menyelesaikan fungsi juga dapat menyelesaikan persamaan orde tinggi. Ini sering digunakan untuk menyelesaikan persamaan kuadrat. Fungsi mengembalikan akar persamaan dalam array.
Contoh berikut menyelesaikan persamaan kuadrat x 2 -7x +12 =0. Buat file skrip dan ketik kode berikut
eq = 'x^2 -7*x + 12 = 0'; s = solve(eq); disp('The first root is: '), disp(s(1)); disp('The second root is: '), disp(s(2));
Saat Anda menjalankan file, ini akan menampilkan hasil berikut
The first root is: 3 The second root is: 4
Contoh berikut menyelesaikan persamaan kuadrat x 2 -7x +12 =0 dalam Oktaf. Buat file skrip dan ketik kode berikut
Demo Langsungs = roots([1, -7, 12]); disp('The first root is: '), disp(s(1)); disp('The second root is: '), disp(s(2));
Saat Anda menjalankan file, ini akan menampilkan hasil berikut
The first root is: 4 The second root is: 3
menyelesaikan fungsi juga dapat menyelesaikan persamaan orde tinggi. Sebagai contoh, mari kita selesaikan persamaan kubik sebagai (x-3) 2 (x-7) =0
solve('(x-3)^2*(x-7)=0')
MATLAB akan mengeksekusi pernyataan di atas dan mengembalikan hasil berikut
ans = 3 3 7
Dalam kasus persamaan orde tinggi, akar panjang mengandung banyak suku. Anda bisa mendapatkan nilai numerik dari akar tersebut dengan mengubahnya menjadi dua kali lipat. Contoh berikut menyelesaikan persamaan orde keempat x 4 7x 3 + 3x 2 5x + 9 =0.
Buat file skrip dan ketik kode berikut
eq = 'x^4 - 7*x^3 + 3*x^2 - 5*x + 9 = 0'; s = solve(eq); disp('The first root is: '), disp(s(1)); disp('The second root is: '), disp(s(2)); disp('The third root is: '), disp(s(3)); disp('The fourth root is: '), disp(s(4)); % converting the roots to double type disp('Numeric value of first root'), disp(double(s(1))); disp('Numeric value of second root'), disp(double(s(2))); disp('Numeric value of third root'), disp(double(s(3))); disp('Numeric value of fourth root'), disp(double(s(4)));
Saat Anda menjalankan file, ia mengembalikan hasil berikut
The first root is: 6.630396332390718431485053218985 The second root is: 1.0597804633025896291682772499885 The third root is: - 0.34508839784665403032666523448675 - 1.0778362954630176596831109269793*i The fourth root is: - 0.34508839784665403032666523448675 + 1.0778362954630176596831109269793*i Numeric value of first root 6.6304 Numeric value of second root 1.0598 Numeric value of third root -0.3451 - 1.0778i Numeric value of fourth root -0.3451 + 1.0778i
Harap dicatat bahwa dua akar terakhir adalah bilangan kompleks.
Contoh berikut menyelesaikan persamaan orde keempat x 4 7x 3 + 3x 2 5x + 9 =0.
Buat file skrip dan ketik kode berikut
Demo Langsungv = [1, -7, 3, -5, 9]; s = roots(v); % converting the roots to double type disp('Numeric value of first root'), disp(double(s(1))); disp('Numeric value of second root'), disp(double(s(2))); disp('Numeric value of third root'), disp(double(s(3))); disp('Numeric value of fourth root'), disp(double(s(4)));
Saat Anda menjalankan file, ia mengembalikan hasil berikut
Numeric value of first root 6.6304 Numeric value of second root -0.34509 + 1.07784i Numeric value of third root -0.34509 - 1.07784i Numeric value of fourth root 1.0598
menyelesaikan fungsi juga dapat digunakan untuk menghasilkan solusi sistem persamaan yang melibatkan lebih dari satu variabel. Mari kita ambil contoh sederhana untuk mendemonstrasikan penggunaan ini.
Mari kita selesaikan persamaan
5x + 9y =5
3x – 6y =4
Buat file skrip dan ketik kode berikut
s = solve('5*x + 9*y = 5','3*x - 6*y = 4'); s.x s.y
Saat Anda menjalankan file, ini akan menampilkan hasil berikut
ans = 22/19 ans = -5/57
Dengan cara yang sama, Anda dapat menyelesaikan sistem linier yang lebih besar. Perhatikan himpunan persamaan berikut
x + 3y -2z =5
3x + 5th + 6z =7
2x + 4y + 3z =8
Kami memiliki pendekatan yang sedikit berbeda untuk menyelesaikan sistem persamaan linear 'n' dalam 'n' yang tidak diketahui. Mari kita ambil contoh sederhana untuk mendemonstrasikan penggunaan ini.
Mari kita selesaikan persamaan
5x + 9y =5
3x – 6y =4
Sistem persamaan linier seperti itu dapat ditulis sebagai persamaan matriks tunggal Ax =b, di mana A adalah matriks koefisien, b adalah vektor kolom yang memuat ruas kanan persamaan linier dan x adalah vektor kolom yang mewakili solusi sebagai ditunjukkan pada program di bawah ini
Buat file skrip dan ketik kode berikut
Demo LangsungA = [5, 9; 3, -6]; b = [5;4]; A \ b
Saat Anda menjalankan file, ini akan menampilkan hasil berikut
ans = 1.157895 -0.087719
Dengan cara yang sama, Anda dapat menyelesaikan sistem linier yang lebih besar seperti yang diberikan di bawah ini −
x + 3y -2z =5
3x + 5th + 6z =7
2x + 4y + 3z =8
perluas dan mengumpulkan fungsi memperluas dan mengumpulkan persamaan masing-masing. Contoh berikut menunjukkan konsep −
Ketika Anda bekerja dengan banyak fungsi simbolik, Anda harus mendeklarasikan bahwa variabel Anda adalah simbolis.
Buat file skrip dan ketik kode berikut
syms x %symbolic variable x syms y %symbolic variable x % expanding equations expand((x-5)*(x+9)) expand((x+2)*(x-3)*(x-5)*(x+7)) expand(sin(2*x)) expand(cos(x+y)) % collecting equations collect(x^3 *(x-7)) collect(x^4*(x-3)*(x-5))
Saat Anda menjalankan file, ini akan menampilkan hasil berikut
ans = x^2 + 4*x - 45 ans = x^4 + x^3 - 43*x^2 + 23*x + 210 ans = 2*cos(x)*sin(x) ans = cos(x)*cos(y) - sin(x)*sin(y) ans = x^4 - 7*x^3 ans = x^6 - 8*x^5 + 15*x^4
Anda harus memiliki simbolik paket, yang menyediakan perluas dan mengumpulkan fungsi untuk memperluas dan mengumpulkan persamaan, masing-masing. Contoh berikut menunjukkan konsep −
Ketika Anda bekerja dengan banyak fungsi simbolik, Anda harus mendeklarasikan bahwa variabel Anda adalah simbolik tetapi Oktaf memiliki pendekatan yang berbeda untuk mendefinisikan variabel simbolik. Perhatikan penggunaan Sin dan Cos , yang juga didefinisikan dalam paket simbolis.
Buat file skrip dan ketik kode berikut
% first of all load the package, make sure its installed. pkg load symbolic % make symbols module available symbols % define symbolic variables x = sym ('x'); y = sym ('y'); z = sym ('z'); % expanding equations expand((x-5)*(x+9)) expand((x+2)*(x-3)*(x-5)*(x+7)) expand(Sin(2*x)) expand(Cos(x+y)) % collecting equations collect(x^3 *(x-7), z) collect(x^4*(x-3)*(x-5), z)
Saat Anda menjalankan file, ini akan menampilkan hasil berikut
ans = -45.0+x^2+(4.0)*x ans = 210.0+x^4-(43.0)*x^2+x^3+(23.0)*x ans = sin((2.0)*x) ans = cos(y+x) ans = x^(3.0)*(-7.0+x) ans = (-3.0+x)*x^(4.0)*(-5.0+x)
faktor fungsi memfaktorkan ekspresi dan penyederhanaan fungsi menyederhanakan ekspresi. Contoh berikut menunjukkan konsep
Buat file skrip dan ketik kode berikut
syms x syms y factor(x^3 - y^3) factor([x^2-y^2,x^3+y^3]) simplify((x^4-16)/(x^2-4))
Saat Anda menjalankan file, ini akan menampilkan hasil berikut
ans = (x - y)*(x^2 + x*y + y^2) ans = [ (x - y)*(x + y), (x + y)*(x^2 - x*y + y^2)] ans = x^2 + 4
MATLAB
MATLAB menyediakan berbagai cara untuk menyelesaikan masalah kalkulus diferensial dan integral, memecahkan persamaan diferensial dari berbagai derajat dan perhitungan batas. Yang terbaik dari semuanya, Anda dapat dengan mudah memplot grafik fungsi kompleks dan memeriksa maksimum, minimum, dan titik
MATLAB menyediakan perbedaan perintah untuk menghitung turunan simbolik. Dalam bentuknya yang paling sederhana, Anda meneruskan fungsi yang ingin Anda bedakan ke perintah diff sebagai argumen. Sebagai contoh, mari kita hitung turunan dari fungsi f(t) =3t2 + 2t-2 Contoh Buat file skrip dan ketik k
MATLAB mewakili polinomial sebagai vektor baris yang mengandung koefisien yang diurutkan berdasarkan pangkat menurun. Misalnya, persamaan P(x) =x4 + 7x3 - 5x + 9 dapat direpresentasikan sebagai p =[1 7 0 -5 9]; Mengevaluasi Polinomial polival fungsi digunakan untuk mengevaluasi polinomial pada ni
Simulink adalah lingkungan desain berbasis simulasi dan model untuk sistem dinamis dan tertanam, terintegrasi dengan MATLAB. Simulink, juga dikembangkan oleh MathWorks, adalah alat bahasa pemrograman grafis aliran data untuk pemodelan, simulasi dan analisis sistem dinamis multi-domain. Ini pada dasa