Sayısal Analiz Ders Notları

advertisement
Sayısal Analiz Ders Notları
Ders 1
Deniz UÇAR
Sayısal Analiz : Sayısal analiz (nümerik analiz veya sayısal çözümleme) matematik
problemlerinin bilgisayar yardımı ile çözümlenme tekniğidir. Genellikle analitik olarak
çözümleri çok zor veya imkânsız olan matematik problemleri belli hata aralıklarında
çözümlemek için kullanılır.
Sayısal çözümün vazgeçilmez parçalarından biri de elektronik araçlardır. Bilgisayar
teknolojisi
ile sayısal analiz metotları birbirine paralel olarak gelişmiştir.
Örnek :
günümüzün en popüler nümerik analiz metotlarından biri olan sonlu elemanlar metodunun
teorisi 1930'larda olmasına rağmen; yöntem el ile işlem yapmaya uygun olmadığından
dolayı gerekli ilgiyi o yıllarda görmemiş ve gelişen bilgisayar teknolojisiyle birlikte
kullanım alanı bulmuştur.
Sayısal işlemler için süper bilgisayarlar kullanılabileceği gibi bunun yanında küçük hesap
makineleri de kullanılabilir. Hangisi kullanılırsa kullanılsın, işlem yapılabilmesi için her ortamın
kendine
özgü
yazım
kurallarının
bilinmesi
gereklidir.
Bilgisayarlarda
problemlerin
modellenmesi ve çözümleri için BASIC, Fortran, Pascal, C, C++, C#, Pyhton gibi genel
amaçlı programlama dillerinden bir kullanılabilir. Ama bilgisayar programı yazmak zahmetli
bir iş olduğu için matematiksel işlemler yapabilen ticari paket programları, örnek olarak
Mathematica, MatLab veya MathCAD,
kullanılabileceği gibi ücretsiz olarak internet
ortamında bulunan SciLab ve Octava, gibi matematiksel işlemler yapmak için geliştirilmiş
programlarda kullanılabilir. Bu programlar çok pahalı, yaygın olarak kullanımı olmadığından
veya kendilerine özgü bir kullanım şekli olduğundan dolayı her ofis/kullanıcı için uygun
olamayabilir. Buların yerine ofis paket programların değişmez parçası olan Elektronik Hesap
Tablo (Spread Sheet) programları da sayısal işlemleri yapmak için günlük kullanıma elverişli
olabilir.
Diğer taraftan bu hazır elektronik hesap tabloları ve matematik programları genel amaçlı
kullanımlar için geliştirildiklerinden dolayı her kullanıcının gereksinimlerini bire bir
karşılamayabilir. Bu durumlarda sayısal çözümleme yapacak kişinin programlama dillerinden
birini kullanarak program yazmaktan başka çaresi kalmayabilir. Burada yine elektronik hesap
tablolarının kendi içinde programlama yapmaya yardımcı araçları kullanılabilir. Bu araçlar
kullanıcıya VisualBasic formatında programlama yapma imkânı vermektedir. Fakat bu yazılan
programların en büyük dezavantajı tek başlarına kullanılamıyor olmalarıdır, bu programlar her
zaman hangi program içinde geliştirildi iseler o programların içinde çalışabilirler. Yani "exe"
uzantılı halde getirilemezler.
Piyasada birçok Elektronik hesap tablo programları vardır. Bunlardan bazıları: Microsoft
Ofisin bir parçası olan EXCEL, Coral Ofisin bir parçası olan Coral Lotus 1-2-3, OpenOffice
ve StrarOffice programlarıdır.
Hatalar ve Hataların Kaynakları
Fiziksel veya sosyal olayların matematiksel olarak çözülmelerinde yapılan hatalar genellikle üç
ana başlıkta toplanır. Bunlar modelleme hataları, ölçme hataları ve sayısal hatalardır.
1.
Modelleme hatası, bir olayın formüle edilmesi esnasında varsayımlardan kaynaklanan
hatalardır. Örnek olarak serbest düşme problemlerinin modellenmesinde hava ile
cisim arasındaki sürtünme ihmal edilmesinden dolayı meydana gelen hatalar bu tür
hatalar gurubuna girer.
2. Ölçme hatası , deney ve gözlemede ölçmelerden dolayı meydana gelen hatalardır.
Yukarıdaki örnekte eğer serbest düşme yapan cismin, düştüğü mesafe veya havada
düşerken geçen süre eğer yanlış ölçülürse bu tür hatalar ölçme hatası olarak
tanımlanabilir.
3. Sayısal hatalar veya diğer bir deyimle modelim çözümlenmesinde yapılan hatalardır.
Bu bölümde sayısal hatalardan bahsedilecektir. Genel olarak sayısal hataları iki ana gruba
ayırabiliriz: kesme hatalar (truncation error) ve yuvarlama hataları (roudn off).
Yuvarlama hataları : 1/3 kesrini bilgisayar 0.33333... gibi belli adet hane kullanarak yazar.
sayıların tanımlanması için kaç hane kullanılacağı rakamların nasıl tanımlandığı ve bilgisayarın
mimarisi ile ilgilidir. Bu tür hatalara yuvarlama hatası (round-off error) denir.
Kesme hataları : Örnek olarak bir integral işlemini analitik olarak yapmak yerine nümerik
olarak yapmak için sürekli bir f(x) fonksiyonu yerine, bu fonksiyonun alanını kolay yoldan
bulabilecek biçimde küçük parçacıklara bölünerek süreksiz hale getirilir. Bu süreksizlikler
hatalara neden olur; bu tür hatalara kesme hatası denir.
Yukarıda görüldüğü gibi kullanılan terim sayısı artıkça, fonksiyon analitik değerine
yaklaşacaktır. Eğer terim sayısı azaltılırsa hata miktarı büyür. Bilgisayar işlemlerinde sonsuz
sayıda adım kullanılmayacağı için, belli sayıda terim kullanıldıktan sonra veya belli bir hata
aralığına gelince işlemin durdurulması gerekir. Bu hata miktarları genellikle üç tür ölçek
kullanılarak tanımlanır. Bunlar:
Mutlak Hata (Absolute Error, em): Analitik olarak bulunan veya doğru olarak kabul edilen
değer ile nümerik olarak bulunan değerin farkının mutlak değeri mutlak hata olarak
tanımlanır. Matematiksel olarak denklem ile gösterilir.
,
Bağıl Hata (Relative Error, eb) : Gerçek değer ile yaklaşık değerin farklarının, gerçek
değere
oranı olarak tanımlanır. Matematiksel olarak denklem (1-4) ile gösterilebilir. Bağıl hata
boyutsuz olduğu için, mutlak hatadan daha anlamlıdır. Ama fonksiyonun gerçek değeri
sıfıra eşit olduğunda bağıl hata tanımsız olacağından dolayı her problem için kullanışlı
değildir.
İki tanım : Doğruluk bir hesaplanılan veya ölçülen değerin gerçek değere ne kadar yaklaştığını
ifade eder. Bunun yanına hassaslık ise bir ölçüm veya hesabın kendi aralarında ne kadar
uyumlu olduğunu gösterir. Örnek olarak n adet numunesi test edilmiş ve n farklı sonuç elde
edilmiş olsun. Eğer sonuçlar bir birine yakınsa ölçüm hassastır denebilir ama sonucun
doğruluğu tartışılabilir. Testin doğruluğunu kanıtlamak için ise kullanılan cihazın doğru olarak
ölçme yaptığı kanıtlanmalıdır.
Download