Geçen hafta ne yapmıştık 2. Dereceden, lineer, fark denklemleri, özdeğer problemi, özdeğerler, özvektörler, özdeğerlere bakarak sistemin davranışını öngörme, norm, lineer olmayan dinamik sistemler için bir fark denklemi örneği. Hatırlatma (**) sistemi için: Çözüm sıfıra yaklaşıyor Çözüm büyüyor, sonsuza gidiyor Herhangi bir için σ jω özdeğerler birim dairenin içinde ve üstünde ise çözümler sıfıra yakınsar veya salınır. Tanım: V vektör uzayı olmak üzere, aşağıdaki dört özelliği sağlayan fonksiyon : normdur
Sabit nokta (fixed point) Bu hafta lineer olmayan dinamik sistemler için neler yapılabilir incelemeden önce bazı önbilgiler verilecek. Buraya bakınca türev neye ilişkin bilgi de veriyor? Önbilgi: Tanım: Türev Tanım: Sabit nokta (fixed point) Fark denkleminin zamanla değişmeyen çözümüne, fark denkleminin sabit noktası denir. https://en.wikipedia.org/wiki/Derivative Bu çözümü nasıl belirleriz? cebrik denkleminin çözümü ile sabit nokta belirlenecek. https://en.wikipedia.org/wiki/Fixed_point_(mathematics)
Hatırlatma Baz vektörleri 3. Ders 2. yansı R3 için bir baz vektörü kümesi nedir? R3’de herhangi bir vektörü bu baz vektörleri cinsinden ifade edelim Kaç tane baz vektörü kümesi vardır? R3 için bir başka baz vektörü kümesi: Rn için belirlenmiş bir baz vektörü kümesinde kaç tane vektör vardır? Kaç tane baz vektörü kümesi belirleyebiliriz?
Elemanları sürekli fonksiyonlar olan bir vektör uzayının boyutu ‘dur. Önbilgiye devam: Elemanları sürekli fonksiyonlar olan bir vektör uzayının boyutu ‘dur. Bir baz vektörü kümeside polinomlardır. Bir baz vektörü kümesi olmak için lineer bağımsız ve uzayı geriyor olmaları gerek bu iki koşuluda sağlıyorlar. Herhangi bir sürekli fonksiyonu polinomlar cinsinden yazmak için katsayılarıda belirlememiz gerek, Taylor serisine açılım katsayıları nasıl belirleyeceğimiz bilgisini verir. Elemanları fonksiyonlar olan bir vektör ile belirtilseydi bağıntısı, nasıl Taylor serisine açabiliriz? Jacobien matris
İlk değer 0.1 olarak değiştirilirse x = -9.6159e-07 Bu haftanın konusu: Lineer olan sistemler için davranışın nasıl olacağına dair bilgiyi özdeğerlere bakarak edinebiliyoruz. Lineer olmayan sistemler için de böyle bir bilgiden yararlanmanın yolu var mı acaba? Lineerleştirme: Sistemin davranışını kritik bazı yerlerde kabaca lineer eşdeğeri ile inceleyebiliriz. Nerelerde? Nasıl elde ederiz Örneğimize dönersek: Önce sabit noktaları belirleyelim: İlk değer 0.1 olarak değiştirilirse x = -9.6159e-07 degerf =-9.6159e-07 x = 0.3333 degerf =-7.7458e-09 MATLAB ile nasıl yaparız?
Denge noktaları civarında lineerleştirelim: Lineer eşdeğer: Sabit bir sayı Böylece sistem daha önceden incelediğimiz sisteme dönüştü Üçüncü ders 4. yansı Asıl sistem nasıldı? MATLAB’de lineerleştirip davranışını iki farklı sabit nokta civarında inceleyelim r=3 için 0 ve 0.33 olarak belirlenmiş denge noktası civarında sistemin dinamik davranışı
Daha önce yaptığımız gibi ama Bu sefer ilk değerde farklılık var %%%%logistic fark denklemini lineerleştirelim%%% clear all %%%%%%%%%%%%%%parametreler%%%%% %%%fonksiyon için%%% r=3; %%%%sabit noktaları bulalım%%%% for k=1:10 [x, degerf]= fsolve(@(x) F_logistic_fark(x,r), 0.1+0.01*k); cozumler_v(k)=[x]; if cozumler_v(k)~=cozumler_v(1) yeni_cozum=cozumler_v(k); else ilk_cozum=cozumler_v(1); end if yeni_cozum<0.1*10^-3 yeni_cozum=round(yeni_cozum); yeni_cozum=yeni_cozum; if ilk_cozum<0.1*10^-3 ilk_cozum=round(ilk_cozum); ilk_cozum=ilk_cozum; x1=ilk_cozum x2=yeni_cozum Daha önce yaptığımız gibi ama Bu sefer ilk değerde farklılık var Sizce for döngüsünü neden koyduk? Bu if döngüsü ne yapmakta? Bu if döngüleri ne yapmakta? x1 = x2 = 0.3333 Bu sonuçları «command window»’da göreceğiz
Bu sonuçlarıda «command window»’da göreceğiz %%%%lineerleştirelim syms x f_fonksiyon(x)=(F_logistic_fark(x,r)+x) df_fonksiyon=diff(f_fonksiyon,x) %%%%%lineer eşdeğer%%%% if df_fonksiyon(x1)<0.1*10^-3 f_lineer_x1=round(df_fonksiyon(x1)); else f_lineer_x1=df_fonksiyon(x1); end if df_fonksiyon(x2)<0.1*10^-3 f_lineer_x2=round(df_fonksiyon(x2)); f_lineer_x2=df_fonksiyon(x2); %%%%%%%çözüm%%%% %%%%%ilkdeğerler%%%% x_1=0.1; x_2=0.1; %%%%iterasyon sayısı%%% iterasyon=25; for k=1:iterasyon x_1(k+1)=f_lineer_x1*x_1(k); x_2(k+1)=f_lineer_x2*x_2(k); subplot(2,1,1), plot(x_1,'r*'),title('birinci sabit nokta civarýnda zamanla deðiþim'), xlabel('t'),ylabel('x_1') subplot(2,1,2), plot(x_2,'*'), title('ikinci sabit nokta civarýnda zamanla deðiþim'), xlabel('t'),ylabel('x_2') Burada ne olmakta? Bu sonuçlarıda «command window»’da göreceğiz f_fonksiyon(x) = - x - 3*x*(x - 1) df_fonksiyon(x) = 2 - 6*x Bu if döngüleri ne yapmakta? Bu for döngüsüne yapmakta?