MATLAB, diferansiyel ve integral hesabı çözmek, diferansiyel denklemleri çözmek ve herhangi bir derecedeki limit hesaplamaları için çeşitli yöntemler sunar. Karmaşık fonksiyon grafiklerini kolayca çizebilir, orijinal fonksiyonu ve türevlerini çözerek grafikteki maksimum, minimum ve diğer sabit noktaları kontrol edebilirsiniz.
Bu bölüm matematik problemlerini tanıtacaktır. Bu bölümde, prova algoritması, yani hesaplama fonksiyonu sınırlaması ve doğrulama sınırlama niteliği tartışılacaktır.
Türevin bir sonraki bölümünde, ifadenin türevini hesaplayacak ve bir grafiğin yerel maksimum ve minimumunu bulacaksınız. Ayrıca diferansiyel denklemleri çözmeyi de tartışacağız.
Son olarak, "Entegrasyon / Entegrasyon" bölümünde integral hesabını tartışacağız.
Hesaplama sınırı
MATLAB, limiti hesaplamak için bir limit fonksiyonu sağlar. En basit haliyle limit fonksiyonu, parametre olarak bir ifade alır ve bağımsız değişken sıfır olduğunda ifadenin limitini bulur.
Örneğin, f (x) = (x ^ 3 + 5) / (x ^ 4 + 7) fonksiyonunun sınırını hesaplamak için, çünkü x sıfıra meyillidir.
syms xlimit ((x ^ 3 + 5) / (x ^ 4 + 7)) MATLABYukarıdaki örnek kodu yürütün ve aşağıdaki sonuçları alın:
Deneme > > syms x sınırı ((x ^ 3 + 5) / (x ^ 4 + 7)) ans = 5/7 KabukLimit fonksiyonu sembolik hesaplama alanına girer; MATLAB'a hangi sembolik değişkenin kullanıldığını söylemek için semboller fonksiyonunu kullanmanız gerekir. Değişken sıfırdan başka bir sayıya meylettiği için fonksiyonun sınırını hesaplamak da mümkündür. Hesaplamak-
Limit komutunu parametrelerle kullanabilirsiniz. Birincisi bir ifadedir ve ikincisi bir sayıdır-x yakınlık anlamına gelir, burada a.
Örneğin, f (x) = (x-3) / (x-1) fonksiyonunun sınırını hesaplamak için, çünkü x 1'e meyillidir.
sınırı ((x-3) / (x-1), 1) MATLABYukarıdaki örnek kodu yürütün ve aşağıdaki sonuçları alın:
ans = NaN KabukBaşka bir örneğe bakalım,
sınır (x ^ 2 + 5, 3) KabukYukarıdaki örnek kodu yürütün ve aşağıdaki sonuçları alın:
ans = 14 KabukSınırı hesaplamak için Oktav kullanın
Aşağıdakiler, sembolik paketi kullanan yukarıdaki örneğin Oktav versiyonudur, sonuçları çalıştırmayı ve karşılaştırmayı deneyin -
pkg sembolik yük semboller x = sym ("x"); subs ((x ^ 3 + 5) / (x ^ 4 + 7), x, 0) MATLABYukarıdaki örnek kodu yürütün ve aşağıdaki sonuçları alın:
ans = 0,7142857142857142857 KabukDoğrulama limitlerinin temel özellikleri
Cebirsel limit teoremi, limitin bazı temel özelliklerini sağlar. Bu özellikler aşağıdaki gibidir -
Aşağıdaki iki işlevi düşünün -
f (x) = (3x + 5) / (x-3) g (x) = x ^ 2 + 1.Ardından, fonksiyonun sınırını hesaplayın, bu iki fonksiyonun x'i 5'e meyillidir ve limitin temel özelliklerini doğrulamak için bu iki fonksiyonu ve MATLAB'ı kullanın.
misal
Bir komut dosyası oluşturun ve içine aşağıdaki kodu yazın -
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) MATLABYukarıdaki örnek kodu yürütün ve aşağıdaki sonuçları alın:
l1 = 17 l2 = 17 lAdd = 34 lSub = 0 lMult = 289 lDiv = 1 KabukLimitin temel özelliklerini doğrulamak için Oktav kullanın
Aşağıdakiler, sembolik paketi kullanan yukarıdaki örneğin Oktav versiyonudur, sonuçları çalıştırmayı ve karşılaştırmayı deneyin -
pkg sembolik yük semboller 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 (fg, x, 4) lMult = subs (f * g, x, 4) lDiv = subs (f / g, x, 4) MATLABYukarıdaki örnek kodu yürütün ve aşağıdaki sonuçları alın:
l1 = 17.0 l2 = 17.0 lAdd = 34.0 lSub = 0.0 lMult = 289.0 lDiv = 1.0 KabukSol ve sağ sınır sınırı
Fonksiyon, değişkenin belirli bir değerine kadar süreksizliğe sahipse, bu noktada bir sınır yoktur. Başka bir deyişle, x = a olduğunda, f (x) fonksiyonunun sınırı süreksizliğe sahiptir. X'in değeri, soldan x'e yaklaştığında, x'in değeri, x'in sağdan yaklaştığı sınıra eşit değildir.
X için < A'nın değeri, sol sınır x- olarak tanımlanır > A'nın sınırı, soldan a'ya yaklaşan x'tir. X için > A'nın değeri, sağ sınır x- olarak tanımlanır > Sağdan a'nın sınırı, yani x, a'ya yaklaşır. Sol limit ve sağ limit eşit olmadığında limit mevcut değildir.
Şimdi bir işleve bir göz atalım -
f (x) = (x-3) / | x-3 |Aşağıdakiler gösterecek
bulunmuyor. MATLAB, gerçekleri iki şekilde açıklamamıza yardımcı olur -
Sol ve sağ limitler, limit komutuna son parametre olarak "sol" ve "sağ" dizgeleri geçirilerek hesaplanır.
misal
Bir komut dosyası oluşturun ve içine aşağıdaki kodu yazın -
f = (x-3) / abs (x-3); ezplot (f,) l = limit (f, x, 3, 'sol') r = limit (f, x, 3, 'sağ') MATLABYukarıdaki örnek kodu yürütün ve aşağıdaki sonuçları alın:
Aşağıdaki çıktı görüntülenir -
Deneme > > Deneme > > f = (x-3) / abs (x-3); ezplot (f,) l = sınır (f, x, 3, 'sol') r = sınır (f, x, 3, 'sağ') l = -1 r = 1 KabukMATLAB, sembolik türevleri hesaplamak için diff komutunu sağlar. En basit şekliyle, farklılaştırılacak fonksiyon parametre olarak diff komutuna aktarılır.
Örneğin, bir fonksiyonun türevini hesaplamak için denklem -
misal
Bir komut dosyası oluşturun ve içine aşağıdaki kodu yazın -
syms t f = 3 * t ^ 2 + 2 * t ^ (- 2); fark (f) MATLABYukarıdaki örnek kodu yürütün ve aşağıdaki sonuçları alın:
Deneme > > syms t f = 3 * t ^ 2 + 2 * t ^ (- 2); fark (f) ans = 6 * t-4 / t ^ 3 KabukAşağıdakiler, Oktav hesaplamasını kullanan yazma yöntemidir -
pkg sembolik yük semboller t = sym ("t"); f = 3 * t ^ 2 + 2 * t ^ (- 2); farklılaştır (f, t) MATLABYukarıdaki örnek kodu yürütün ve aşağıdaki sonuçları alın:
ans = 6 * t-4 / t ^ 3 KabukTemel diferansiyel kuralların doğrulanması
Aşağıdaki, diferansiyel kuralın çeşitli denklemlerini veya kurallarını kısaca açıklar ve bu kuralları doğrular. Bunun için birinci türevi f '(x) ve ikinci türevi f' (x) yazacağız.
Aşağıdakiler farklılaşma kurallarıdır -
Kural 1
Herhangi bir f ve g işlevi için, herhangi bir gerçek sayı a ve b, işlevin türevleridir:
h (x) = af (x) + bg (x) x'e göre, h (x) = af (x) + bg (x) ile verilir.
Kural-2
toplam Ve çıkarma kuralı şu şekilde ifade edilir: f ve g iki fonksiyonsa, o zaman f 've g' sırasıyla türevleridir, aşağıdaki gibi -
(f + g) '= f' + g ' (f-g) '= f'-g'Kural-3
Çarpım kuralı şu şekilde ifade edilir: Eğer f ve g iki fonksiyonsa, f 've g' sırasıyla türevleridir, aşağıdaki gibi -
(f.g) '= f'.g + g'.fKural-4
Bölüm kuralı, f ve g'nin iki fonksiyon olması durumunda, f 've g'nin sırasıyla türevleri olduğunu belirtir, o zaman-
Kural-5
Polinom veya temel kuvvet kuralı şu şekilde ifade edilir: y = f (x) = x ^ n ise, o zaman-
Bu kuralın doğrudan sonucu, herhangi bir sabitin türevinin sıfır olmasıdır, yani, y = k ise, o zaman herhangi bir sabittir -
f '= 0Kural-5
Zincir kuralı, h (x) = f (g (x)) fonksiyonunun x'e göre türevi olarak ifade edilir.
h '(x) = f' (g (x)). g '(x) MATLABmisal
Bir komut dosyası oluşturun ve içine aşağıdaki kodu yazın -
syms x syms t f = (x + 2) * (x ^ 2 + 3) der1 = fark (f) f = (t ^ 2 + 3) * (sqrt (t) + t ^ 3) der2 = fark (f) f = ( x ^ 2-2 * x + 1) * (3 * x ^ 3-5 * x ^ 2 + 2) der3 = fark (f) f = (2 * x ^ 2 + 3 * x) / (x ^ 3 + 1) der4 = fark (f) f = (x ^ 2 + 1) ^ 17der5 = fark (f) f = (t ^ 3 + 3 * t ^ 2 + 5 * t -9) ^ (- 6) der6 = fark (f) MATLABYukarıdaki örnek kodu yürütün ve aşağıdaki sonuçları alın:
f = (x ^ 2 + 3) * (x + 2) der1 = 2 * x * (x + 2) + x ^ 2 + 3 f = (t ^ (1/2) + t ^ 3) * (t ^ 2 + 3) 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 KabukAşağıdaki, yukarıdaki örnek için Octave yazımıdır -
pkg sembolik yük semboller x = sym ("x"); t = sym ("t"); f = (x + 2) * (x ^ 2 + 3) der1 = farklılaştırma (f, x) f = (t ^ 2 + 3) * (t ^ (1/2) + t ^ 3) der2 = farklılaştırma (f, t) f = (x ^ 2-2 * x + 1) * (3 * x ^ 3-5 * x ^ 2 + 2 ) der3 = farklılaştırma (f, x) f = (2 * x ^ 2 + 3 * x) / (x ^ 3 + 1) der4 = farklılaştırma (f, x) f = (x ^ 2 + 1) ^ 17 der5 = farklılaştır (f, x) f = (t ^ 3 + 3 * t ^ 2 + 5 * t -9) ^ (- 6) der6 = farklılaştır (f, t) MATLABTrigonometrik fonksiyonların üsleri, logaritmaları ve türevleri
Aşağıdaki tablo ortak üslerin, logaritmaların ve trigonometrik fonksiyonların türevini sağlar,
misal
Bir komut dosyası oluşturun ve içine aşağıdaki kodu yazın -
syms x y = exp (x) diff (y) y = x ^ 9diff (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) ^ 2diff (y) y = cos (3 * x ^ 2 + 2 * x + 1) diff (y) y = exp (x) / sin (x) fark (y) MATLABYukarıdaki örnek kodu yürütün ve aşağıdaki sonuçları alın:
y = exp (x) ans = exp (x) y = x ^ 9 ans = 9 * x ^ 8 y = günah (x) ans = çünkü (x) y = tan (x) ans = tan (x) ^ 2 + 1 y = çünkü (x) ans = -sin (x) y = günlük (x) ans = 1 / x y = günlük (x) / günlük (10) ans = 1 / (x * günlük (10)) y = günah (x) ^ 2 ans = 2 * cos (x) * günah (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 KabukAşağıdaki kod, yukarıdaki kodun Oktav yazımıdır -
pkg sembolik yük semboller x = sym ("x"); y = Exp (x) farklılaştırmak (y, x) y = x ^ 9 farklılaştırmak (y, x) y = Günah (x) farklılaştırmak (y, x) y = Tan (x) farklılaştırmak (y, x) y = Cos (x) farklılaştırmak (y, x) y = Günlük (x) farklılaştırmak (y, x) % sembolik paketler bu desteğe sahip değil % y = Log10 (x) % farklılaşma (y, x) y = Günah (x) ^ 2 farklılaştırmak (y, x) y = Cos (3 * x ^ 2 + 2 * x + 1) farklılaştırmak (y, x) y = Uzm (x) / Sin (x) farklılaştırmak (y, x) KabukDaha yüksek mertebeden türevleri hesaplayın
F fonksiyonunun daha yüksek türevini hesaplamak için, diff (f, n) kullanın.
Fonksiyonun ikinci türevini hesaplamanın formülü -
f = x * exp (-3 * x); fark (f, 2) MATLABYukarıdaki kodu yürüten MATLAB aşağıdaki sonucu döndürecektir -
ans = 9 * x * exp (-3 * x) -6 * exp (-3 * x) KabukAşağıdaki, yukarıdaki örneği yeniden yazmak için Octave kullanımıdır, kod aşağıdaki gibidir -
pkg sembolik yük semboller x = sym ("x"); f = x * Exp (-3 * x); farklılaştır (f, x, 2) MATLABmisal
Bu örnekte çözülmesi gereken bir sorun var. Y = f (x) = 3sin (x) + 7cos (5x) fonksiyonu verildiğinde, f "+ f = -5cos (2x) denkleminin doğru olup olmadığını bulun.
Bir komut dosyası oluşturun ve içine aşağıdaki kodu yazın -
syms x y = 3 * sin (x) + 7 * cos (5 * x);% fonksiyonu tanımlayan lhs = diff (y, 2) + y;% rhs = -5 * cos (2 * x) denkleminin lhs değerinin değerlendirilmesi; Denklemin% rhs'si (isequal (lhs, rhs)) disp ('Evet, denklem doğrudur'); else disp ('Hayır, denklem doğru değildir'); enddisp ('LHS'nin değeri:'), disp (lhs); MATLABDosya çalıştırıldığında, aşağıdaki sonuç görüntülenir -
Hayır, denklem doğru değil LHS'nin değeri: -168 * çünkü (5 * x) KabukYukarıdakiler, yukarıdaki örneğin Octave yazısıdır.
pkg sembolik yük semboller x = sym ("x"); y = 3 * Sin (x) + 7 * Cos (5 * x);% fonksiyonu tanımlayan lhs = diferansiye (y, x, 2) + y; rhs denkleminin lh'lerini değerlendirme = -5 * Cos (2 * x); denklemin% rhs'si (lhs == rhs) disp ('Evet, denklem doğrudur'); else disp ('Hayır, denklem doğru değildir'); enddisp ('LHS'nin değeri:'), disp (lhs); MATLABBir eğrinin maksimum ve minimum değerlerini bulun
Grafiğin yerel maksimum ve minimum değerlerini arıyorsanız, temelde fonksiyon grafiğindeki en yüksek noktayı veya en düşük noktayı belirli bir konumda veya sembol değişkeninin belirli değer aralığında bulmaktır.
Y = f (x) fonksiyonu için, grafikte grafiğin sıfır eğime sahip olduğu noktaya sabit nokta denir. Başka bir deyişle, sabit nokta f '(x) = 0'dır.
Farklılaştırılmış fonksiyonun sabit noktasını bulmak için türevi sıfıra ayarlamanız ve denklemi çözmeniz gerekir.
Misal
F (x) = 2x3 + 3x2-12x + 17 fonksiyonunun sabit noktasını bulmak için
Aşağıdaki adımlara başvurabilirsiniz.
İlk önce fonksiyonu girin ve grafiği çizin, kod aşağıdaki gibidir -
syms x y = 2 * x ^ 3 + 3 * x ^ 2-12 * x + 17;% fonksiyon grafiği (y) tanımlama MATLABYukarıdaki örnek kodu yürütün ve aşağıdaki sonuçları alın:
Yukarıdakiler, yukarıdaki örneğin Octave yazısıdır.
pkg sembolik yük semboller x = sym ('x'); y = inline ("2 * x ^ 3 + 3 * x ^ 2-12 * x + 17"); ezplot (y) print -deps graph.eps MATLABAmacımız, grafikte bazı yerel maksimumlar ve minimumlar bulmaktır. Grafikte ayrılmış yerel maksimum ve minimumları bulmak istediğimizi varsayalım. Aşağıdaki örnek koda bakın-
syms x y = 2 * x ^ 3 + 3 * x ^ 2-12 * x + 17;% fonksiyon grafiği (y,) tanımlama MATLABYukarıdaki örnek kodu yürütün ve aşağıdaki sonuçları alın:
Aşağıdaki, yukarıdaki örneğin Octave yazısıdır -
pkg sembolik yük semboller x = sym ('x'); y = inline ("2 * x ^ 3 + 3 * x ^ 2-12 * x + 17"); ezplot (y,) print -deps graph.eps MATLABDaha sonra türevin hesaplanması gerekiyor.
g = fark (y) MATLABMATLAB kodu yürütür ve aşağıdaki sonucu döndürür -
g = 6 * x ^ 2 + 6 * x-12 KabukAşağıdaki, yukarıdaki örneğin Octave yazısıdır -
pkg sembolik yük semboller x = sym ("x"); y = 2 * x ^ 3 + 3 * x ^ 2-12 * x + 17; g = farklılaştırma (y, x) MATLABArdından, sıfır olduğu değeri elde etmek için türev fonksiyonu g'yi çözün.
s = çöz (g) MATLABMATLAB kodu yürütür ve aşağıdaki sonucu döndürür -
s = 1 -2 KabukAşağıdaki, yukarıdaki örneğin Octave yazısıdır -
pkg sembolik yük semboller x = sym ("x"); y = 2 * x ^ 3 + 3 * x ^ 2-12 * x + 17; g = farklılaştırma (y, x) kökleri () MATLABBu, öngörülen planımızla tutarlıdır. Bu nedenle, x = 1, -2 kritik noktasındaki f fonksiyonu değerlendirilir. Sembolik işlevdeki değeri değiştirmek için subs komutunu kullanabilirsiniz.
subs (y, 1), subs (y, -2) MATLABMATLAB kodu yürütür ve aşağıdaki sonucu döndürür -
ans = 10 ans = 37 KabukAşağıdaki, yukarıdaki örneğin Octave yazısıdır -
pkg sembolik yük semboller x = sym ("x"); y = 2 * x ^ 3 + 3 * x ^ 2-12 * x + 17; g = farklılaştır (y, x) kökler () subs (y, x, 1), subs (y, x, -2) MATLABBu nedenle f (x) = 2x ^ 3 + 3x ^ 2-12x + 17 fonksiyonunun aralıktaki minimum ve maksimum değerleri sırasıyla 10 ve 37'dir.
Diferansiyel denklemleri çözün
MATLAB, diferansiyel denklemleri çözmek için dsolve komutunu sağlar.
Tek bir denklemin çözümünü bulmak için dsolve komutunun en temel biçimi şudur:
dsolve ('eqn') MATLABEqn, denklemi girmek için kullanılan metin dizesidir.
Bir dizi rastgele sabit, MATLAB etiketleri C1, C2, vb. İçeren sembolik bir çözüm döndürür.
Soru için başlangıç ve sınır koşullarını da belirtebilirsiniz. Virgülle ayrılmış liste aşağıdaki formülü izler:
dsolve ('eqn', 'koşul1', 'koşul2',)Dsolve komutunu kullanmak için türev D ile temsil edilir. Örneğin, f '(t) = -2 * f + maliyet (t) gibi bir denklem aşağıdaki gibi girilir
'Df = -2 * f + cos (t)'Daha yüksek dereceden türev, D türevinin sırası ile temsil edilir.
Örneğin, f "(x) + 2f '(x) = 5sin3x denklemi şu şekilde girilmelidir:
'D2y + 2Dy = 5 * günah (3 * x)'Birinci dereceden diferansiyel denklemin basit bir örneğine bakalım: y '= 5y.
s = dsolve ('Dy = 5 * y')MATLAB kodu yürütür ve aşağıdaki sonucu döndürür -
s = C2 * exp (5 * t) Kabukİkinci dereceden diferansiyel denklemin başka bir örneğini ele alalım: y "-y = 0, y (0) = -1, y '(0) = 2.
dsolve ('D2y-y = 0', 'y (0) = -1', 'Dy (0) = 2') MATLABMATLAB kodu yürütür ve aşağıdaki sonucu döndürür -
ans = exp (t) / 2- (3 * exp (-t)) / 2 Kabuk