Disusun Oleh :
Lukman Mubarak (021700013)
Aetandrian Widya Raharjo (021700012)
Agus Wijayanto (121900001)
ELEKTRONIKA INSTRUMENTASI
JURUSAN TEKNOFISIKA NUKLIR
SEKOLAH TINGGI TEKNOLOGI NUKLIR
BADAN TENAGA NUKLIR NASIONAL
YOGYAKARTA
2019
1
Tugas Laporan Praktikum
Pengenalan Matlab
I. PLOTTING
II. GRAFIK
1. Mengetahui dan memahami dasar penggunaan aplikasi Matlab dalam sistem kontrol.
2. Mengerti bagaimana cara penggunaan fungsi :
a) Plotting
b) Grafik
c) Aljabar
d) Kalkulus
e) Polynomial
f) Transform
g) diferensial, dan
h) integral
menggunakan software Matlab.
3. Mengerti bagaimana menggunakan fungsi Simulink dari software Matlab.
1. Personal Komputer
2. Software Matlab 2015b beserta modul tutorial matlab melalui
https://www.tutorialspoint.com/matlab
4.1. Plotting
Contoh berikut akan menunjukkan konsep. Mari kita plot fungsi sederhana y =
x untuk rentang nilai untuk x dari 0 hingga 100, dengan kenaikan 5.
x = [0:5:100];
y = x;
plot(x, y)
3
Mari kita ambil satu contoh lagi untuk memplot fungsi y = x 2 . Dalam contoh ini,
kita akan menggambar dua grafik dengan fungsi yang sama, tetapi untuk kedua
kalinya, kita akan mengurangi nilai kenaikan. Harap perhatikan bahwa saat kami
mengurangi kenaikan, grafik menjadi lebih halus.
x = [1 2 3 4 5 6 7 8 9 10];
x = [-100:20:100];
y = x.^2;
plot(x, y)
4
Ubah sedikit file kode, kurangi kenaikan menjadi 5 -
x = [-100:5:100];
y = x.^2;
plot(x, y)
5
MATLAB memungkinkan Anda untuk menambahkan judul, label di sepanjang
sumbu x dan sumbu y, garis kisi dan juga untuk menyesuaikan sumbu untuk
merapikan grafik.
Perintah xlabel dan ylabel menghasilkan label di sepanjang sumbu x dan sumbu y.
Grid on perintah memungkinkan Anda untuk menempatkan garis grid pada grafik.
Axis equal perintah memungkinkan menghasilkan plot dengan faktor skala yang sama
dan ruang-ruang pada kedua sumbu.
Contoh
x = [0:0.01:10];
y = sin(x);
plot(x, y), xlabel('x'), ylabel('Sin(x)'), title('Sin(x)
Graph'),
grid on, axis equal
6
Menggambar Banyak Fungsi pada Grafik yang Sama
Anda dapat menggambar banyak grafik pada plot yang sama. Contoh berikut
menunjukkan konsep -
Contoh
x = [0 : 0.01: 10];
y = sin(x);
g = cos(x);
plot(x, y, x, g, '.-'), legend('Sin(x)', 'Cos(x)')
Kode Warna
7
di putih
k Hitam
b Biru
r Merah
c Cyan
g hijau
m Magenta
dan Kuning
Contoh
f (x) = 3x 4 + 2x 3 + 7x 2 + 2x + 9 dan
g (x) = 5x 3 + 9x + 2
8
Mengatur Timbangan Sumbu
The axis perintah memungkinkan Anda untuk mengatur skala sumbu. Anda
dapat memberikan nilai minimum dan maksimum untuk sumbu x dan y
menggunakan perintah sumbu dengan cara berikut -
Contoh
x = [0 : 0.01: 10];
y = exp(-x).* sin(2*x + 3);
plot(x, y), axis([0 10 -1 1])
9
Menghasilkan Sub-Plot
Saat Anda membuat array plot dalam gambar yang sama, masing-masing plot
ini disebut subplot. The subplot Perintah ini digunakan untuk membuat subplot.
subplot(m, n, p)
di mana, m dan n adalah jumlah baris dan kolom dari array plot
dan p menentukan di mana harus meletakkan plot tertentu.
Setiap plot yang dibuat dengan perintah subplot dapat memiliki karakteristiknya
sendiri. Contoh berikut menunjukkan konsep -
Contoh
10
x = [0:0.01:5];
y = exp(-1.5*x).*sin(10*x);
subplot(1,2,1)
plot(x,y), xlabel('x'),ylabel('exp(–1.5x)*sin(10x)'),axis([0
5 -1 1])
y = exp(-2*x).*sin(10*x);
subplot(1,2,2)
plot(x,y),xlabel('x'),ylabel('exp(–2x)*sin(10x)'),axis([0 5 -
1 1])
4.2. GRAFIK
Menggambar Bar Charts
The bar perintah menarik dua bar chart dimensi. Mari kita ambil contoh untuk
menunjukkan gagasan itu.
Contoh
Misal kita memiliki kelas imajiner dengan 10 siswa. Kita tahu persentase nilai
yang diperoleh siswa ini adalah 75, 58, 90, 87, 50, 85, 92, 75, 60, dan 95. Kita
akan menggambar diagram batang untuk data ini.
11
Buat file skrip dan ketik kode berikut -
x = [1:10];
y = [75, 58, 90, 87, 50, 85, 92, 75, 60, 95];
bar(x,y), xlabel('Student'),ylabel('Score'),
title('First Sem:')
print -deps graph.eps
Menggambar kontur
Garis kontur dari fungsi dua variabel adalah kurva di mana fungsi memiliki nilai
konstan. Garis kontur digunakan untuk membuat peta kontur dengan
menggabungkan titik-titik dengan ketinggian yang sama di atas tingkat tertentu,
seperti permukaan laut rata-rata.
Contoh
Mari kita buat peta kontur yang memperlihatkan garis kontur untuk fungsi yang
diberikan g = f (x, y). Fungsi ini memiliki dua variabel. Jadi, kita harus
12
menghasilkan dua variabel independen, yaitu, dua set data x dan y. Ini dilakukan
dengan memanggil perintah meshgrid .
The meshgrid Perintah ini digunakan untuk menghasilkan matriks elemen yang
memberikan rentang lebih x dan y bersama dengan spesifikasi selisih dalam
setiap kasus.
Mari kita plot fungsi kita g = f (x, y), di mana −5 ≤ x ≤ 5, −3 ≤ y ≤ 3. Mari kita
selisih 0,1 untuk kedua nilai. Variabel ditetapkan sebagai -
14
Contoh
[x,y] = meshgrid(-2:.2:2);
g = x .* exp(-x.^2 - y.^2);
surf(x, y, g)
print -deps graph.eps
4.3.ALJABAR
15
Fungsi penyelesaian digunakan untuk memecahkan persamaan
aljabar. Dalam bentuknya yang paling sederhana, fungsi penyelesaian
mengambil persamaan yang dilampirkan dalam tanda kutip sebagai argumen.
solve('x-5=0')
ans =
5
y = solve('x-5 = 0')
y =
5
solve('x-5')
ans =
5
solve(equation, variable)
16
Sebagai contoh, mari kita memecahkan persamaan v - u - 3t 2 = 0, untuk v.
Dalam hal ini, kita harus menulis -
solve('v-u-3*t^2=0', 'v')
ans =
3*t^2 + u
roots([1, -5])
ans = 5
y = roots([1, -5])
y = 5
Fungsi selesaikan juga dapat memecahkan persamaan orde tinggi. Ini sering
digunakan untuk menyelesaikan persamaan kuadrat. Fungsi mengembalikan
akar persamaan dalam array.
Contoh berikut memecahkan persamaan kuadrat x 2 -7x +12 = 0. Buat file skrip
dan ketik kode berikut -
17
s = solve(eq);
disp('The first root is: '), disp(s(1));
disp('The second root is: '), disp(s(2));
solve('(x-3)^2*(x-7)=0')
ans =
18
3
3
7
Dalam kasus persamaan orde yang lebih tinggi, akar panjang mengandung
banyak istilah. Anda bisa mendapatkan nilai numerik dari akar tersebut dengan
mengubahnya menjadi dua kali lipat. Contoh berikut memecahkan persamaan
urutan keempat x 4 - 7x 3 + 3x 2 - 5x + 9 = 0.
19
- 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
20
-0.34509 - 1.07784i
Numeric value of fourth root
1.0598
5x + 9y = 5
3x - 6y = 4
ans =
22/19
ans =
-5/57
Dengan cara yang sama, Anda dapat memecahkan sistem linier yang lebih
besar. Pertimbangkan rangkaian persamaan berikut -
x + 3t -2z = 5
3x + 5thn + 6z = 7
2x + 4thn + 3z = 8
21
Kami memiliki pendekatan yang sedikit berbeda untuk menyelesaikan sistem
persamaan linear 'n' di 'n' yang tidak diketahui. Mari kita ambil contoh sederhana
untuk menunjukkan penggunaan ini.
5x + 9y = 5
3x - 6y = 4
Sistem persamaan linear seperti itu dapat ditulis sebagai persamaan matriks
tunggal Ax = b, di mana A adalah matriks koefisien, b adalah vektor kolom yang
berisi sisi kanan dari persamaan linear dan x adalah vektor kolom yang mewakili
solusi sebagai ditunjukkan dalam program di bawah ini -
A = [5, 9; 3, -6];
b = [5;4];
A \ b
ans =
1.157895
-0.087719
Dengan cara yang sama, Anda dapat memecahkan sistem linier yang lebih
besar seperti yang diberikan di bawah ini -
x + 3t -2z = 5
3x + 5thn + 6z = 7
2x + 4thn + 3z = 8
22
The memperluas dan mengumpulkan fungsi mengembang dan
mengumpulkan persamaan masing-masing. Contoh berikut menunjukkan
konsep
Ketika Anda bekerja dengan banyak fungsi simbolis, Anda harus menyatakan
bahwa variabel Anda simbolis.
% collecting equations
collect(x^3 *(x-7))
collect(x^4*(x-3)*(x-5))
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
23
Memperluas dan Mengumpulkan Persamaan dalam Oktaf
Ketika Anda bekerja dengan banyak fungsi simbolis, Anda harus menyatakan
bahwa variabel Anda simbolis tetapi Oktaf memiliki pendekatan berbeda untuk
mendefinisikan variabel simbolis. Perhatikan penggunaan Sin dan Cos , yang
juga didefinisikan dalam paket simbolik.
% 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)
24
Ketika Anda menjalankan file, ini 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)
Contoh
syms x
syms y
factor(x^3 - y^3)
factor([x^2-y^2,x^3+y^3])
25
simplify((x^4-16)/(x^2-4))
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
4.4.KALKULUS
syms x
limit((x^3 + 5)/(x^4 + 7))
ans =
5/7
limit((x - 3)/(x-1),1)
ans =
NaN
limit(x^2 + 5, 3)
ans =
14
Berikut ini adalah versi Oktaf dari contoh di atas menggunakan paket simbolis ,
cobalah untuk mengeksekusi dan membandingkan hasilnya -
x = sym("x");
subs((x^3+5)/(x^4+7),x,0)
ans =
0.7142857142857142857
27
Teorema Batas Aljabar menyediakan beberapa sifat dasar batas. Ini adalah
sebagai berikut -
f (x) = (3x + 5) / (x - 3)
g (x) = x 2 +1.
Mari kita menghitung batas fungsi sebagai x cenderung ke 5, dari kedua fungsi
dan memverifikasi properti dasar batas menggunakan kedua fungsi ini dan
MATLAB.
Contoh
syms x
f = (3*x + 5)/(x-3);
g = x^2 + 1;
l1 = limit(f, 4)
l2 = limit (g, 4)
lAdd = limit(f + g, 4)
lSub = limit(f - g, 4)
lMult = limit(f*g, 4)
lDiv = limit (f/g, 4)
l1 =
17
28
l2 =
17
lAdd =
34
lSub =
0
lMult =
289
lDiv =
1
Berikut ini adalah versi Oktaf dari contoh di atas menggunakan paket simbolis ,
cobalah untuk mengeksekusi dan membandingkan hasilnya -
x = sym("x");
f = (3*x + 5)/(x-3);
g = x^2 + 1;
l1 = subs(f, x, 4)
l2 = subs (g, x, 4)
lAdd = subs (f+g, x, 4)
lSub = subs (f-g, x, 4)
lMult = subs (f*g, x, 4)
lDiv = subs (f/g, x, 4)
29
Oktaf akan menjalankan pernyataan di atas dan mengembalikan hasil berikut -
l1 =
17.0
l2 =
17.0
lAdd =
34.0
lSub =
0.0
lMult =
289.0
lDiv =
1.0
Ketika suatu fungsi memiliki diskontinuitas untuk beberapa nilai tertentu dari
variabel, batas tidak ada pada titik itu. Dengan kata lain, batas fungsi f (x)
memiliki diskontinuitas pada x = a, ketika nilai batas, karena x mendekati x dari
sisi kiri, tidak sama dengan nilai batas ketika x mendekati dari sisi kanan.
Ini mengarah pada konsep batas tangan kiri dan tangan kanan. Batas kidal
didefinisikan sebagai batas x -> a, dari kiri, yaitu, x mendekati a, untuk nilai x
<a. Batas tangan kanan didefinisikan sebagai batas x -> a, dari kanan, yaitu x
mendekati a, untuk nilai x> a. Ketika batas kidal dan batas kanan tidak sama,
batas itu tidak ada.
f (x) = (x - 3) / | x - 3 |
Kami akan menunjukkan bahwa batas x-> 3 f (x) tidak ada. MATLAB membantu
kami menetapkan fakta ini dengan dua cara -
30
Dengan menghitung batas dan menunjukkan bahwa keduanya berbeda.
Batas kidal dan tangan kanan dihitung dengan melewatkan karakter string
'kiri' dan 'kanan' ke perintah batas sebagai argumen terakhir.
Contoh
f = (x - 3)/abs(x-3);
ezplot(f,[-1,5])
l = limit(f,x,3,'left')
r = limit(f,x,3,'right')
l =
-1
r =
1
31
4.5. POLINOMIAL
MATLAB mewakili polinomial sebagai vektor baris yang berisi koefisien yang
diperintahkan oleh kekuatan descending. Misalnya, persamaan P (x) = x 4 +
7x 3 - 5x + 9 dapat direpresentasikan sebagai -
p = [1 7 0 -5 9];
Mengevaluasi polinomial
p = [1 7 0 -5 9];
polyval(p,4)
ans = 693
Sebagai contoh, mari kita buat matriks persegi X dan mengevaluasi p polinomial,
di X -
p = [1 7 0 -5 9];
X = [1 2 -3 4; 2 -5 6 3; 3 1 0 2; 5 -7 3 8];
polyvalm(p, X)
ans =
2307 -1769 -939 4499
2314 -2376 -249 4695
2256 -1892 -549 4310
4570 -4532 -1062 9269
p = [1 7 0 -5 9];
r = roots(p)
r =
-6.8661 + 0.0000i
-1.4247 + 0.0000i
0.6454 + 0.7095i
0.6454 - 0.7095i
Poli fungsi adalah kebalikan dari fungsi akar dan kembali ke koefisien
polinomial. Misalnya -
p2 = poly(r)
p2 =
Columns 1 through 3:
Columns 4 and 5:
Fungsi polyfit menemukan koefisien polinomial yang cocok dengan set data
dalam arti kuadrat-terkecil. Jika x dan y adalah dua vektor yang berisi data x dan
33
y untuk dipasang ke polinomial n-degree, maka kita mendapatkan polinom yang
menyesuaikan data dengan menulis -
p = polyfit(x,y,n)
Contoh
p =
4.1056 -47.9607 222.2598 -362.7453 191.1250
34
4.6. TRANSFORM
MATLAB menyediakan perintah laplace , fourier dan fft untuk bekerja dengan
transformasi Laplace, Fourier dan Fast Fourier.
Transformasi Laplace
Transformasi Laplace dari fungsi waktu f (t) diberikan oleh integral berikut -
laplace(f(t))
Contoh
35
Dalam contoh ini, kita akan menghitung transformasi Laplace dari beberapa
fungsi yang umum digunakan.
syms s t a b w
laplace(a)
laplace(t^2)
laplace(t^9)
laplace(exp(-b*t))
laplace(sin(w*t))
laplace(cos(w*t))
ans =
1/s^2
ans =
2/s^3
ans =
362880/s^10
ans =
1/(b + s)
ans =
w/(s^2 + w^2)
ans =
s/(s^2 + w^2)
Sebagai contoh,
ilaplace(1/s^3)
ans =
t^2/2
Contoh
syms s t a b w
ilaplace(1/s^7)
ilaplace(2/(w+s))
ilaplace(s/(s^2+4))
ilaplace(exp(-b*t))
ilaplace(w/(s^2 + w^2))
ilaplace(s/(s^2 + w^2))
ans =
t^6/720
ans =
2*exp(-t*w)
ans =
cos(2*t)
ans =
37
ilaplace(exp(-b*t), t, x)
ans =
sin(t*w)
ans =
cos(t*w)
Transformasi Fourier
Contoh
syms x
f = exp(-2*x^2); %our function
ezplot(f,[-2,2]) % plot of our function
FT = fourier(f) % Fourier transform
38
Hasil berikut ditampilkan -
FT =
(2^(1/2)*pi^(1/2)*exp(-w^2/8))/2
ezplot(FT)
39
Invers Fourier Transforms
f = ifourier(-2*exp(-abs(w)))
f =
-2/(pi*(x^2 + 1))
4.7. DIFERENSIAL
Contoh
40
Buat file skrip dan ketik kode berikut ke dalamnya -
syms t
f = 3*t^2 + 2*t^(-2);
diff(f)
Ketika kode di atas dikompilasi dan dieksekusi, itu menghasilkan hasil sebagai
berikut -
ans =
6*t - 4/t^3
t = sym("t");
f = 3*t^2 + 2*t^(-2);
differentiate(f,t)
ans =
-(4.0)*t^(-3.0)+(6.0)*t
Mari kita nyatakan secara singkat berbagai persamaan atau aturan untuk
diferensiasi fungsi dan verifikasi aturan ini. Untuk tujuan ini, kita akan menulis f
'(x) untuk turunan orde pertama dan f "(x) untuk turunan orde kedua.
Aturan 1
Untuk setiap fungsi f dan g dan bilangan real a dan b adalah turunan dari fungsi -
41
h '(x) = dari' (x) + bg '(x)
Aturan 2
The sum dan pengurangan aturan menyatakan bahwa jika f dan g adalah dua
fungsi, f 'dan g' adalah turunan mereka masing-masing, kemudian,
Aturan 3
The produk Aturan menyatakan bahwa jika f dan g adalah dua fungsi, f 'dan g'
adalah turunan mereka masing-masing, kemudian,
Aturan 4
The quotient Aturan menyatakan bahwa jika f dan g adalah dua fungsi, f 'dan g'
adalah turunan mereka masing-masing, kemudian,
Aturan 5
Hasil langsung dari aturan ini adalah bahwa turunan dari konstanta adalah nol,
yaitu, jika y = k , konstanta apa pun, maka
f '= 0
Aturan 6
The rantai aturan menyatakan bahwa, turunan dari fungsi fungsi h (x) = f (g
(x)) terhadap x adalah,
syms x
syms t
f = (x + 2)*(x^2 + 3)
der1 = diff(f)
f = (2*x^2 + 3*x)/(x^3 + 1)
der4 = diff(f)
f = (x^2 + 1)^17
der5 = diff(f)
f =
(x^2 + 3)*(x + 2)
der1 =
2*x*(x + 2) + x^2 + 3
f =
(t^(1/2) + t^3)*(t^2 + 3)
43
der2 =
(t^2 + 3)*(3*t^2 + 1/(2*t^(1/2))) + 2*t*(t^(1/2) + t^3)
f =
(x^2 - 2*x + 1)*(3*x^3 - 5*x^2 + 2)
der3 =
(2*x - 2)*(3*x^3 - 5*x^2 + 2) - (- 9*x^2 + 10*x)*(x^2 -
2*x + 1)
f =
(2*x^2 + 3*x)/(x^3 + 1)
der4 =
(4*x + 3)/(x^3 + 1) - (3*x^2*(2*x^2 + 3*x))/(x^3 + 1)^2
f =
(x^2 + 1)^17
der5 =
34*x*(x^2 + 1)^16
f =
1/(t^3 + 3*t^2 + 5*t - 9)^6
der6 =
-(6*(3*t^2 + 6*t + 5))/(t^3 + 3*t^2 + 5*t - 9)^7
44
x = sym("x");
t = sym("t");
f = (x + 2)*(x^2 + 3)
der1 = differentiate(f,x)
f = (2*x^2 + 3*x)/(x^3 + 1)
der4 = differentiate(f,x)
f = (x^2 + 1)^17
der5 = differentiate(f,x)
f =
(2.0+x)*(3.0+x^(2.0))
der1 =
3.0+x^(2.0)+(2.0)*(2.0+x)*x
f =
(t^(3.0)+sqrt(t))*(3.0+t^(2.0))
45
der2 =
(2.0)*(t^(3.0)+sqrt(t))*t+((3.0)*t^(2.0)+(0.5)*t^(-
0.5))*(3.0+t^(2.0))
f =
(1.0+x^(2.0)-(2.0)*x)*(2.0-(5.0)*x^(2.0)+(3.0)*x^(3.0))
der3 =
(-2.0+(2.0)*x)*(2.0-
(5.0)*x^(2.0)+(3.0)*x^(3.0))+((9.0)*x^(2.0)-
(10.0)*x)*(1.0+x^(2.0)-(2.0)*x)
f =
(1.0+x^(3.0))^(-1)*((2.0)*x^(2.0)+(3.0)*x)
der4 =
(1.0+x^(3.0))^(-1)*(3.0+(4.0)*x)-(3.0)*(1.0+x^(3.0))^(-
2)*x^(2.0)*((2.0)*x^(2.0)+(3.0)*x)
f =
(1.0+x^(2.0))^(17.0)
der5 =
(34.0)*(1.0+x^(2.0))^(16.0)*x
f =
(-9.0+(3.0)*t^(2.0)+t^(3.0)+(5.0)*t)^(-6.0)
der6 =
-(6.0)*(-9.0+(3.0)*t^(2.0)+t^(3.0)+(5.0)*t)^(-
7.0)*(5.0+(3.0)*t^(2.0)+(6.0)*t)
46
Derivatif Fungsi Eksponensial, Logaritmik dan Trigonometrik
Fungsi Turunan
ex ex
Pada x 1/x
ln c x 1 / x.ln c
xx x x . (1 + ln x)
tan (x) dtk 2 (x), atau 1 / cos 2 (x), atau 1 + tan 2 (x)
cot (x) -csc 2 (x), atau -1 / sin 2 (x), atau - (1 + cot 2 (x))
47
CSC (x) -csc (x) .cot (x)
Contoh
syms x
y = exp(x)
diff(y)
y = x^9
diff(y)
y = sin(x)
diff(y)
y = tan(x)
diff(y)
y = cos(x)
diff(y)
y = log(x)
diff(y)
y = log10(x)
diff(y)
y = sin(x)^2
diff(y)
y = cos(3*x^2 + 2*x + 1)
48
diff(y)
y = exp(x)/sin(x)
diff(y)
y =
exp(x)
ans =
exp(x)
y =
x^9
ans =
9*x^8
y =
sin(x)
ans =
cos(x)
y =
tan(x)
ans =
tan(x)^2 + 1
y =
cos(x)
ans =
-sin(x)
y =
49
log(x)
ans =
1/x
y =
log(x)/log(10)
ans =
1/(x*log(10))
y =
sin(x)^2
ans =
2*cos(x)*sin(x)
y =
cos(3*x^2 + 2*x + 1)
ans =
-sin(3*x^2 + 2*x + 1)*(6*x + 2)
y =
exp(x)/sin(x)
ans =
exp(x)/sin(x) - (exp(x)*cos(x))/sin(x)^2
x = sym("x");
y = Exp(x)
differentiate(y,x)
50
y = x^9
differentiate(y,x)
y = Sin(x)
differentiate(y,x)
y = Tan(x)
differentiate(y,x)
y = Cos(x)
differentiate(y,x)
y = Log(x)
differentiate(y,x)
y = Sin(x)^2
differentiate(y,x)
y = Cos(3*x^2 + 2*x + 1)
differentiate(y,x)
y = Exp(x)/Sin(x)
differentiate(y,x)
y =
exp(x)
51
ans =
exp(x)
y =
x^(9.0)
ans =
(9.0)*x^(8.0)
y =
sin(x)
ans =
cos(x)
y =
tan(x)
ans =
1+tan(x)^2
y =
cos(x)
ans =
-sin(x)
y =
log(x)
ans =
52
x^(-1)
y =
sin(x)^(2.0)
ans =
(2.0)*sin(x)*cos(x)
y =
cos(1.0+(2.0)*x+(3.0)*x^(2.0))
ans =
-(2.0+(6.0)*x)*sin(1.0+(2.0)*x+(3.0)*x^(2.0))
y =
sin(x)^(-1)*exp(x)
ans =
sin(x)^(-1)*exp(x)-sin(x)^(-2)*cos(x)*exp(x)
Untuk menghitung turunan yang lebih tinggi dari fungsi f, kami menggunakan
sintaks diff (f, n) .
f = x*exp(-3*x);
diff(f, 2)
ans =
9*x*exp(-3*x) - 6*exp(-3*x)
53
pkg load symbolic
symbols
x = sym("x");
f = x*Exp(-3*x);
differentiate(f, x, 2)
ans =
(9.0)*exp(-(3.0)*x)*x-(6.0)*exp(-(3.0)*x)
Contoh
Dalam contoh ini, mari kita selesaikan masalah. Mengingat bahwa fungsi y = f (x)
= 3 sin (x) + 7 cos (5x) . Kita harus mencari tahu apakah persamaan f "+ f = -
5cos (2x) benar.
syms x
y = 3*sin(x)+7*cos(5*x); % defining the function
lhs = diff(y,2)+y; %evaluting the lhs of the equation
rhs = -5*cos(2*x); %rhs of the equation
if(isequal(lhs,rhs))
disp('Yes, the equation holds true');
else
disp('No, the equation does not hold true');
end
disp('Value of LHS is: '), disp(lhs);
x = sym("x");
y = 3*Sin(x)+7*Cos(5*x); % defining the function
lhs = differentiate(y, x, 2) + y; %evaluting the lhs of the
equation
rhs = -5*Cos(2*x); %rhs of the equation
if(lhs == rhs)
disp('Yes, the equation holds true');
else
disp('No, the equation does not hold true');
end
disp('Value of LHS is: '), disp(lhs);
Jika kita mencari maksimum lokal dan minimum untuk grafik, kita pada dasarnya
mencari titik tertinggi atau terendah pada grafik fungsi di lokasi tertentu, atau untuk
rentang nilai tertentu dari variabel simbolik.
Untuk fungsi y = f (x) titik-titik pada grafik di mana grafik memiliki kemiringan nol
disebut titik diam . Dengan kata lain titik stasioner adalah di mana f '(x) = 0.
Untuk menemukan titik-titik stasioner dari fungsi yang kita bedakan, kita perlu
mengatur turunan sama dengan nol dan menyelesaikan persamaannya.
55
Contoh
syms x
y = 2*x^3 + 3*x^2 - 12*x + 17; % defining the function
ezplot(y)
x = sym('x');
y = inline("2*x^3 + 3*x^2 - 12*x + 17");
ezplot(y)
print -deps graph.eps
56
Tujuan kami adalah menemukan beberapa maxima dan minima lokal pada
grafik, jadi mari kita cari maxima dan minima lokal untuk interval [-2, 2] pada
grafik.
syms x
y = 2*x^3 + 3*x^2 - 12*x + 17; % defining the function
ezplot(y, [-2, 2])
x = sym('x');
y = inline("2*x^3 + 3*x^2 - 12*x + 17");
57
g = diff(y)
g =
6*x^2 + 6*x - 12
x = sym("x");
y = 2*x^3 + 3*x^2 - 12*x + 17;
g = differentiate(y,x)
g =
-12.0+(6.0)*x+(6.0)*x^(2.0)
s = solve(g)
s =
1
-2
x = sym("x");
y = 2*x^3 + 3*x^2 - 12*x + 17;
g = differentiate(y,x)
58
roots([6, 6, -12])
g =
-12.0+(6.0)*x^(2.0)+(6.0)*x
ans =
-2
1
Ini setuju dengan rencana kami. Jadi mari kita evaluasi fungsi f pada titik
kritis x = 1, -2. Kita bisa mengganti nilai dalam fungsi simbolis dengan
menggunakan perintah subs .
ans =
10
ans =
37
x = sym("x");
y = 2*x^3 + 3*x^2 - 12*x + 17;
g = differentiate(y,x)
roots([6, 6, -12])
subs(y, x, 1), subs(y, x, -2)
ans =
59
10.0
ans =
37.0-4.6734207789940138748E-18*I
Oleh karena itu, minimum dan maksimum pada fungsi f (x) = 2x 3 + 3x 2 - 12x +
17, dalam interval [-2,2] adalah 10 dan 37.
Bentuk paling dasar dari perintah dsolve untuk menemukan solusi untuk
persamaan tunggal adalah
dsolve('eqn')
di mana eqn adalah string teks yang digunakan untuk memasukkan persamaan.
Anda juga dapat menentukan kondisi awal dan batas untuk masalah tersebut,
karena daftar yang dibatasi koma mengikuti persamaan sebagai -
dsolve('eqn','cond1', 'cond2',…)
Mari kita ambil contoh sederhana dari persamaan diferensial orde pertama: y '=
5y.
60
s = dsolve('Dy = 5*y')
s =
C2*exp(5*t)
Mari kita ambil contoh lain dari persamaan diferensial orde kedua sebagai: y "- y
= 0, y (0) = -1, y '(0) = 2.
ans =
exp(t)/2 - (3*exp(-t))/2
4.8. INTEGRAL
Integrasi berkaitan dengan dua jenis masalah yang pada dasarnya berbeda.
Pada tipe pertama, turunan dari suatu fungsi diberikan dan kami ingin
menemukan fungsinya. Karena itu, pada dasarnya kami membalikkan
proses diferensiasi. Proses kebalikan ini dikenal sebagai anti-diferensiasi,
atau menemukan fungsi primitif, atau menemukan integral yang tidak
terbatas .
61
Menurut definisi, jika turunan dari fungsi f (x) adalah f '(x), maka kita mengatakan
bahwa integral tak pasti dari f' (x) sehubungan dengan x adalah f (x). Misalnya,
karena turunannya (berkenaan dengan x) dari x 2 adalah 2x, kita dapat
mengatakan bahwa integral 2x yang tidak pasti adalah x 2 .
Dalam simbol -
∫ 2xdx = x 2 .
Integral tak terbatas tidak unik, karena turunan dari x 2 + c, untuk setiap nilai
konstanta c, juga akan menjadi 2x.
∫ 2xdx = x 2 + c .
int(f);
syms x
int(2*x)
ans =
x^2
Contoh 1
Dalam contoh ini, mari kita temukan integral dari beberapa ekspresi yang umum
digunakan. Buat file skrip dan ketik kode berikut di dalamnya -
syms x n
62
int(sym(x^n))
f = 'sin(n*t)'
int(sym(f))
syms a t
int(a*cos(pi*t))
int(a^x)
ans =
piecewise([n == -1, log(x)], [n ~= -1, x^(n + 1)/(n +
1)])
f =
sin(n*t)
ans =
-cos(n*t)/n
ans =
(a*sin(pi*t))/pi
ans =
a^x/log(a)
Contoh 2
syms x n
int(cos(x))
int(exp(x))
int(log(x))
int(x^-1)
int(x^5*cos(5*x))
pretty(int(x^5*cos(5*x)))
int(x^-5)
int(sec(x)^2)
63
pretty(int(1 - 10*x + 9 * x^2))
ans =
sin(x)
ans =
exp(x)
ans =
x*(log(x) - 1)
ans =
log(x)
ans =
(24*cos(5*x))/3125 + (24*x*sin(5*x))/625 -
(12*x^2*cos(5*x))/125 + (x^4*cos(5*x))/5 -
(4*x^3*sin(5*x))/25 + (x^5*sin(5*x))/5
2 4
24 cos(5 x) 24 x sin(5 x) 12 x cos(5 x) x cos(5
x)
----------- + ------------- - -------------- + --------
----
3125 625 125 5
3 5
64
4 x sin(5 x) x sin(5 x)
------------- + -----------
25 5
ans =
-1/(4*x^4)
ans =
tan(x)
2
x (3 x - 5 x + 1)
ans =
- (7*x^6)/12 - (3*x^5)/5 + (5*x^4)/8 + x^3/2
6 5 4 3
7 x 3 x 5 x x
- ---- - ---- + ---- + --
12 5 8 2
Menurut definisi, integral tertentu pada dasarnya adalah batas jumlah. Kami
menggunakan integral tertentu untuk menemukan area seperti area antara
kurva dan sumbu x dan area antara dua kurva. Integral yang pasti juga dapat
digunakan dalam situasi lain, di mana jumlah yang dibutuhkan dapat dinyatakan
sebagai batas jumlah.
Fungsi int dapat digunakan untuk integrasi yang pasti dengan melewati batas di
mana Anda ingin menghitung integral.
Menghitung
65
kami menulis,
int(x, a, b)
int(x, 4, 9)
ans =
65/2
x = sym("x");
f = x;
c = [1, 0];
integral = polyint(c);
Area:
32.500
66
symbols
f = inline("x");
[a, ierror, nfneval] = quad(f, 4, 9);
Area:
32.500
Contoh 1
Mari kita menghitung area yang terlampir di antara sumbu x, dan kurva y =
x 3 −2x + 5 dan ordinat x = 1 dan x = 2.
a =
23/4
Area:
5.7500
67
x = sym("x");
f = x^3 - 2*x +5;
c = [1, 0, -2, 5];
integral = polyint(c);
Area:
5.7500
x = sym("x");
f = inline("x^3 - 2*x +5");
Area:
5.7500
Contoh 2
68
f = x^2*cos(x);
ezplot(f, [-4,9])
a = int(f, -4, 9)
disp('Area: '), disp(double(a));
a =
8*cos(4) + 18*cos(9) + 14*sin(4) + 79*sin(9)
Area:
0.3326
x = sym("x");
f = inline("x^2*cos(x)");
69
ezplot(f, [-4,9])
print -deps graph.eps
VII. KESIMPULAN
1. Grafik respon motor DC posisi terhadap tegangan dengan open loop menghasilkan
grafik linier, akibat tidak adanya feedback.
2. Grafik respon motor DC posisi terhadap tegangan dengan close loop menghasilkan
grafik yang mengalami overshoot sebelum mengalami steady state, dipengaruhi oleh
adanya feedback.
3. Grafik respon motor DC kecepatan terhadap tegangan dengan open loop menghasilkan
grafik yang steady state dengan amplitudo/gain steady state sebesar 35.
4. Grafik respon motor DC kecepatan terhadap tegangan dengan close loop menghasilkan
grafik yang steady state dengan amplitudo/gain steady state sebesar 1.
70
71