12.03.2026
8.03.2026
Hiçbiri en üstte değil!
İçine doğduğumuz “gerçek” dünyada, nesneleri sıralamaya alışmışız: biri diğerlerinden üstte, biri diğerlerinden büyük, biri diğerlerini taşıyor.
Alıştığımız sıralama bağıntısı geçişlidir. Anne çocuğu, çocuk çantayı taşıyorsa, anne çantayı da taşıyor demektir. Çantanın anneyi taşıması olacak iş değildir, çünkü anne en üstte... Aynı şekilde, kitap kutunun içinde, kutu odanın içindeyse, kitap da odanın içindedir. Kitabın içinde bir oda olması ancak sanal dünyada mümkündür.
Sayıların, ya da sayıyla ölçülen niceliklerin sıralaması da böyledir.
1 < 10 ve 10 < 50 ise, elbette 1 < 50 doğrudur. Tersi düşünülemez.
Sıra dışı bağıntılar
Bazen bu alışkanlık işe yaramaz, çünkü geçişli bir ilişki yoktur, kimse “en üstte” değildir. Mesela, Taş-Kağıt-Makas oyunu: Hiçbir eleman diğerlerine karşı mutlak üstün değildir. Taş makası kırar, makas kağıdı keser, kağıt taşı sarar. Herbiri diğerini yenerken bir başkasına yenilir. Bu döngü, sistemde birinin sürekli üstün gelmesini engeller.
Benzer bir durum bazı geometrik şekillerde de görülür. Düzgün bir yirmiyüzlünün 12 köşesinden yapılan “altın oranlı” dikdörtgenleri düşünelim. Mor kırmızının, kırmızı sarının, sarı morun içinde. Böylece hiçbir dikdörtgenin kesin bir üstünlüğü yok.
![]() |
| Mor kırmızının, kırmızı sarının, sarı morun içinde: Hiçbiri diğerinden üstün değil! |
Döngüsel Destek
Bu çubukları ilk gördüğümde hayret ettim, boşlukta nasıl duruyorlar!
![]() |
| Adam tuğlaların üstüne 4 çubuk koydu, içinde ateş yakıp üstünde yemek pişirdi https://instagram.com/p/DT53XN_kmd8/ |
Evdeki plastik çubuklarla denedim, üçlü düzeni hemen yaptım. Beşli ve fazlası da zor değil. En basit üçlü destek için çubuklara A, B, C diyelim: A'yı B, B'yi C, C'yi A taşıyor. Hiçbiri en üstte değil!
![]() |
| Çubuklar üçlü destek ile küçük bir yükü taşıyabilir |
Çubukları havada tutan nedir?
C çubuğunun nasıl dengede kaldığını görelim. Çubuk üstünde 4 adet dikey kuvvet var:
- Ağırlık $(W)$: Çubuğun ağırlık merkezindeki yerçekimi, dengelenmesi gereken esas kuvvettir -- aşağı doğru
- Dış Destek $(D)$: Çubuğun sağ ucu sabit destek üstündedir. Destek, çubuğa yukarı doğru bir kuvvet uygular.
- Üstten Gelen Yük $(F_1)$: Çubuğun orta kısmına, B çubuğu biner. Bu, aşağı doğru bir baskı kuvvetidir.
- Alttan Gelen Destek $(F_2)$: Çubuğun sol ucu, A çubuğunun üzerine biner. A çubuğu, bu uca yukarı doğru bir kuvvet uygular.
![]() |
| Bir çubukta kuvvetler dengesi |
C çubuğu için kuvvetler dengesi: A çubuğu altta olduğu için yukarı doğru $F$ kuvveti uygular. B çubuğu üstte olduğuna göre, baskı kuvveti $F$ aşağı doğrudur. Çubuğun hareketsiz durması için, destek noktasında $D=-W$ kuvveti yukarı doğru itmelidir.
Bilinmeyen $F$ kuvveti, momentler dengesinden kolayca bulunur. Çubukların boyu $|AD|=2$ birim ve $|AB|=d\quad(0<d<2)$ olsun. A noktasına göre momentler toplamı sıfır olmalı:
$F |AA| + F |AB| + W |AC| - W |AD|$
$\hspace{1cm} = 0 +F d + W - 2 W = 0$
yani $F d = W$ bulunur.
Başka bir deyişle, $W-F = F(d-1)$ ya da
$\hspace{3cm}W<F \implies d<1$
$\hspace{3cm}W=F \implies d=1$
$\hspace{3cm}W>F \implies d>1$
B çubuğu tam ortada $(d=1)$ ise $F$ kuvveti çubuğun ağırlığına eşittir. B çubuğu C'nin solunda ise $F$, sağında ise $W$ kuvveti daha büyüktür.
Referanslar
Reciprocal frame structures
https://en.wikipedia.org/wiki/Reciprocal_frame
Simple bridge made of wood
https://instagram.com/p/DU2JpRTjO8b/
4.07.2024
Bölünebilme
3, 4, 5, 6, 9, 10, 12 sayıları ile bölünebilme, ilkokulda öğrenip hiç unutmadığımız bilgilerdendir. Zaman içinde bu listeye 8 ve 11 de eklenmiş olabilir. Geri kalan 7, 13, 16, 17, 19 ile bölünebilme kuralları öncekiler kadar basit olmadığı için, bunların yazıldığı bir kitap da görmemiştim. Yakın zamanda bulduğum şu sayfa ilginç:
https://tr.wikipedia.org/wiki/Bölünebilme_kuralları
Bu sayfada en zor kurallar 7 ve 13 için verilmiş, 16 için bir kural yok. 17 ve 19 için verilen yöntem ise genelleştirmeye uygun. Bu yöntemi 19 ve 7 için, aşağıda örneklerle anlatıyorum. Kutulara farklı değerler girerek siz de deneyebilirsiniz.
19 ile bölünebilme
Elimizdeki en az iki basamaklı sayı $m = 10a+b$ olsun. Yani, sayının son basamağı $b$, önceki basamakları $a$.
Sayının iki katını şöyle yazabiliriz: (Neden?)
$2m = 20a+2b \equiv a+2b \pmod {19}$
Verilen sayı $m$ 19 ile bölünebilirse, ondan daha küçük olan $a+2b$ sayısı da tam bölünür. Aşağıdaki örnekte, sondan başlayarak her basamağın iki katı, sayının kalan kısmına ekleniyor, küçük bir sayıya ulaşıncaya kadar:
m = 92701 olsun 92701 = 9270*10 + 1 => 9270+2 9272 = 927*10 + 2 => 927+4 931 = 931*10 + 1 => 931+2 95 = 9*10 + 5 => 9+10 19 OK -- m 19'un tam katıdır
Verilen sayı 19'un tam katı değilse, kalanı bulmak için bu yöntemi biraz değiştirmek gerekir:
$2m \equiv a+2b \pmod {19}$
$m \equiv a/2+b$ (a çift ise)
$m \equiv (a+19)/2+b$ (a tek ise)
![]() |
| 7 ve 11 en zor kural |
7 ile bölünebilme
Elimizdeki en az iki basamaklı sayı $m = 10a+b$ olsun. Yani, sayının son basamağı $b$, önceki basamakları $a$. Sayının iki katını şöyle yazabiliriz: (Neden?)
$2m = 20a+2b \equiv -a+2b \pmod {7}$
Verilen sayı $m$ 7 ile bölünebilirse, ondan daha küçük olan $a-2b$ sayısı da tam bölünür. Aşağıdaki örnekte, sondan başlayarak her basamağın iki katı, sayının kalan kısmından çıkartılıyor, küçük bir sayıya ulaşıncaya kadar:
Verilen sayı 7'nin tam katı değilse, kalanı bulmak için bu yötemin nasıl değiştirileceğini meraklı okuyucuya bırakalım.
Bölme bundan daha kolay değil mi?
Bilgisayar için fark etmez. Yanınızda bilgisayar ya da hesap makinesi yoksa, elle hesap bu yöntemle daha kolay olabilir.
30.12.2022
LaTeX ve GitHub
Bu yıl iki önemli teknoloji birleşti ve matematik sayfalarının daha güzel görünmesini ve daha kolay yapılmasını sağladı. Matematik formülleri kitap kalitesinde yazmanın en kolay yolu olan LaTeX ile kendi sayfalarımızı yayınlamanın en etkin yolu olan GitHub nasıl bir araya geldi? Sorunun cevabı üç meşhur yazılım sisteminin tarihçesinde...
Şu GitHub sayfası bugün vardığımız yeri özetliyor:
maeyler.github.io/Sunumlar/math/sample
![]() |
| Bu iki teknolojiyi web sayfaları (HTML) birleştiriyor |
TeX 1978 ve LaTeX 1984
Bilgisayar bilimlerindeki bütün bilgileri bir araya getirip 5 ciltlik bir ansiklopedi yazmak isteyen Donald Knuth, 3. cildi hazırlarken bir sürprizle karşılaştı: Geleneksel baskı teknikleri yerini bilgisayarlı dizgi makinelerine bırakıyordu. Lakin yeni ürünlerin kalitesi kabul edilir gibi değildi. Durumu düzeltmek için bir yılını feda etmeye karar verdi ve üniversiteden bir yıl izin alarak işe koyuldu.
Bir sene sonunda ürün ortaya çıktı ama titiz bir yazar için yeterli değildi. Knuth'un kendi onayını alması için 10 yıl daha geçti. Tek kişilik çabanın ürünü olan TeX hakikaten fizik ve mühendisliğin bütün alanlarında standart yazım dili haline geldi.
https://en.wikipedia.org/wiki/TeX
LaTeX, bu sisteme akademik yayınları kolaylaştırmaya yönelik pek çok şablon eklemiş. Bu özellikler hazır geldiği için TeX yazılımının yaygınlaşmasına önemli bir katkı sağlıyor.
Ansiklopediye ne oldu dersiniz? 4. cilt iki kitap olarak tamamlandı. 85 yaşındaki yazar, 5. ciltten sonra geri dönüp ilk üç cildi yeniden yazmayı planlıyor! Sonra da hepsini tek ciltte özetlemek istiyor. Hayat hakikaten kısa, bilimin bir dalı bile sığmıyor...
HTML 1993 ve MD 2004
TeX yazılımının henüz bilinmediği 1980 yılında, tanınmamış bir fizikçi, Tim Berners-Lee dokümanlar arasında hızlı geçiş sağlayan basit bir sistem önerdi. Teklif "çok basit, işimize yaramaz" diyerek çöpe atıldı. Basitliğin büyük bir güç olduğunun anlaşılması 10 yıldan fazla sürdü. Tek kişilik çabanın ürünü olan HTML, hakikaten bütün web sayfalarının standart dili haline geldi. Bunu bilgisayar mühendisleri tasarlasaydı çok daha karmaşık kapalı bir sistem olurdu.
https://en.wikipedia.org/wiki/HTML
Lakin, HTML ile sayfa hazırlamak (bütün basitliğine rağmen) zor geliyordu. Adındaki M harfinin "markup" olduğunu gören iki yazılımcı, buna nazire olarak MarkDown kavramını geliştirdi. Buradaki katkı HTML ile kıyaslanamaz ama işleri basitleştiren her gayret kayda değer.
Git 2005 ve GitHub 2008
Bu arada, başka bir basitleştirme ustası, Linus Torvalds dev bir yazılım olan Linux işletim sistemini açık kaynak olarak dünyaya kabul ettirmişti. Linux 10 yıl içinde iyice büyüdü ve çok sayıda yazılımcının katkısı ile güçlendi. Farklı kişilerin yaptığı işleri kontrol edebilmek için geliştirilen Git, karmaşık bir sürüm yönetim sistemi. Karmaşıklığına rağmen, çok basit komutlarla kullanılıyor. Tek kişilik çabanın ürünü olarak ortaya çıkan Git, bugün pek çok yazılım sisteminin standart aracı haline geldi.
https://en.wikipedia.org/wiki/git
Lakin tek başına sürüm kontrolü yetmiyor. Yazılımı buluta kaydetmek ve takımların çalışmasını uzaktan yönetebilmek de lazım. GitHub işte bu ihtiyaca cevap veriyor. Eski bir öğrencim "GitHub yazılımcılar için CV görevi görüyor" demişti, ne kadar doğru olduğunu içine girince anladım.
Kendi hayatıma etkileri
1979'da doktorayı tamamlarken çok kişi elektronik yöntemlere geçmişti. Benim tezim ise (o bölümde) daktiloda yazılan son işlerden biri olmalı. TeX henüz. duyulmamıştı. 1988'de doçent olarak Bilkent'e gittiğimde nerdeyse bütün makalelerin LaTeX ile yazıldığını gördüm. O sırada yeni çıkan Mac yazılımını (What You See Is What You Get) tercih ettim, çünkü TeX bana çok zor göründü. 2008'de talebemin yardımı ile bir makale yazdım ama o da yayınlanmadı. Yani, TeX akademik hayatımda hiç etkili olmadı.
HTML ise 2004'de öğrenip uyguladığım bir dil. O zaman takdir ettim ama hayatıma 2018'de gerçekten girdi. O sırada üç yıldır GitHub kullanıyor ve öğretiyordum. MarkDown ile tanışmam da aynı döneme rastlıyor. Son beş yıldır bu iki teknolojiyi yakından takip ediyorum.
Hepsi bir araya gelince, Matemacik sayfalarını elden geçirmek ve gerçek bir kitap kalitesini sağlamak mümkün olacak, hemen başlıyorum. Şöyle bir değişim olacak:
![]() |
| Düz metin ve LaTeX -- çok fark var! |
Bir ay sonra
Matemacik sayfalarını TeX ile yazarken en önemli sorun "inline math" denilen metin içindeki formüller oldu. Standart yöntem olan "$...$" yaklaşımı, kullandığım MathJax içinde aktif değildi. Halbuki GitHub ve VS Code standarda uygun çalışıyordu. Bunun yöntemini 2016 tarihli bir makalede buldum -- demek 2017'de başlayan bu blog daha o zaman TeX ile yazılabilirmiş. Çevremde bunu bilen kimse olmadığı için 5 yıl gecikmeyle katıldım...
Ocak 2023 sonunda çözümü yayınladım ve son 6 yazıyı düzelttim. Eski sürümle kıyaslamak için web adresindeki tarihi "p" yapmak yeterli. Bir örnek:
https://matemacik.blogspot.com/2020/06/carpsan-toplar.html TeX
https://matemacik.blogspot.com/p/carpsan-toplar.html Düz metin
![]() |
| TeX öncesi ve sonrası aynı denklemler |
29.12.2022
Ardışık toplama
Erkan Türe Hocam bu bilmeceyi gönderdi, hemen kontrol edip baktım, toplama işlemleri doğru. "Ardında bir basitlik olmalı" dedim ve buldum.
1. soru: $n+1$ ardışık sayının toplamı, takip eden $n$ sayının toplamına eşit olsun.Aşağıdaki şekil aynı cevaba geometri ile ulaşıyor:
![]() |
| Mavi çizgi toplam alanı iki eşit parçaya böler O halde mavi alanlar eşit olmalı |
2. soru: $n+1$ ardışık sayının kareleri toplamı, takip eden $n$ sayının kareleri toplamına eşit olsun.
Hesap kolaylığı açısından, ilk sayıya değil, tam ortadaki sayıya $x$ diyelim.
Örnek olarak $\mathbf{n=3}$ alalım. Öyle $x$ sayısı arıyoruz ki
$ (x−3)^2+(x−2)^2+(x−1)^2+x^2 = (x+1)^2+(x+2)^2+(x+3)^2 $
olsun. Kareli ve sabit terimleri sadeleştirince,
$ −6x−4x−2x+x^2 = 2x+4x+6x $
$x^2 = 4(1+2+3)x$ ve buradan $x = 24$ bulunur.
olsun. Kareli ve sabit terimleri sadeleştirince,
Cevap:
Aranan ardışık sayıların ilki $n(2n+1)$ olmalıdır.
(Yukarıdaki bilmecede bu formülü doğrulayın)
Peki, dizideki son sayı ne olur?
29.09.2020
Beşgen, Ongen, Euclid
Bir çember içine eşkenar üçgen, kare ve düzgün altıgen çizmeyi ilkokulda öğrenmiştik. Düzgün beşgen çizmek bunlara göre çok daha zordu, çünkü açı ölçmek için hassas bir yöntem bilmiyorduk. İletki kullanmanın zorluğunu o zaman anlamıştım... Meğer matematikçilerin kabul ettiği bir araç değilmiş iletki!
Yalnız cetvel ve pergel ile (açı ve uzunluk ölçmeden) düzgün beşgen çizmenin yolunu Euclid'in Elemanlar kitabında buluyoruz. Yöntemin modern bir yorumunu bu sabah gif dosyası olarak buldum, hemen aktarıyorum. (Kaynağı referanslarda)
Önerme XIII:10
Bir eşkenar beşgen bir çember içine çizilirse, beşgenin kenarı üzerindeki kare, aynı çember içine çizilen altıgenin kenarı ile ongenin kenarı üzerindeki karelere eşittir.
Sayısal bir p değeri aranırsa, ACD dik üçgeninde
$p^2 = 1^2+(\varphi-1)^2 = 3-\varphi$ eşitliğinden hesaplanabilir.
Çember üstünde eşit aralıklı noktalar
Bir çember içine eşkenar üçgen, kare, düzgün beşgen, vb yerleştirme problemi, aslında çemberi $n (=3, 4, 5, ...)$ eşit parçaya bölmekten ibaret. Başka deyişle, birim çember üstünde eşit aralıklı $n$ nokta bulmak istiyoruz. Verilen her $n$ için çözüm var ve açı ölçerek kolayca bulunur.
Açı ölçmeye razı değilsek, yalnız cetvel ve pergel kısıtı ile, her $n$ için çözüm olmayabilir.
Küre üstünde eşit aralıklı noktalar
Üçüncü boyuta geçince durum farklı: Birim küre üstünde eşit aralıklı $n$ nokta aranıyorsa, sadece beş çözüm var: $n = 4, 6, 8, 12, 20$ olabilir. Platonik cisimler olarak bilinen beş düzgün çokyüzlü. Euclid Elemanlar'ın son kitabında bu çözümleri buluyor ve son önermesinde (XIII:18) hepsini yarım çember içinde göstererek muhteşem bir güzellik sergiliyor.
Şimdi de diyorum ki, yukarıda sözü edilen beş şekil dışında, birbirine eşit, eşkenar ve eşaçılı şekiller tarafından içerilen başka şekil [cisim] çizilemez.
Ödev
2. Kenarları $(1, 1, \varphi-1)$ olan üçgende neden taban açıları tepe açısının iki katıdır? Düzgün ongen yapmak için bu üçgenlerden kaç tane gerektiğini düşünerek, AD uzunluğunun ongenin kenarı olduğunu gösterin.
3. Şekildeki A noktasının DE doğru parçasını altın oranda böldüğünü gösterin.
4. Euclid düzgün beşgen için tutarlı olarak "eşkenarlı ve eşaçılı beşgen" ifadesini kullanır. Yukarıdaki önermede neden "eşaçılı" nitelemesine gerek duymamış?
Referanslar
Öklid'in Elemanları, Ali Sinan Sertöz, 2018
sertoz.bilkent.edu.tr/elemanlar.htm
Yazıya konu olan hareketli resim şurada:
en.wikipedia.org/wiki/Decagon
GIF için linkler: Aldoaldoz / CC BY-SA
Resmi parçalarına bölmek için link: ezgif.com/split
Beşgen sayfasındaki yöntemler çok daha karmaşık:
en.wikipedia.org/wiki/Pentagon
Altın Oran: /2017/07/altn-oran.html
23.09.2020
Üçgenin açıları
"Ama bu üçgen düz değil, eğri!" diyorsanız, "düz" ne demek bir düşünelim. Elbette uzaydan bakabilsek eğri olduğunu anlarız, ama yeryüzüne bağlı olduğumuz sürece, bu düzgün bir üçgendir. Matematikçiler "küresel üçgen" diyerek bir ayrım yapmışlar. Yani iç açılar toplamı düzlemde basitçe 180° iken küre üstünde daha büyük olabilir. Acaba toplam açıyı bulan basit bir formülü var mı? (var elbette, olmasa bu yazıyı yazamazdım)Yay uzunluğu ve Radyan ölçüsü
Alıştığımız derece ölçüsü biraz keyfi. Neden tam açı 360° olsun? Çünkü bir yıldaki gün sayısına yakın ve küçük sayıların çoğuna tam bölünebilen bir sayı. Yıldızlar her gün yaklaşık bir derece hareket eder bu ölçü ile... İki ölçü arasındaki geçiş zor değil. Derece ölçüsünü $\pi$ ile çarpıp 180'e bölünce radyan ölçüsü bulunur:
$\large \alpha = \pi d/180$
Yarıçap $r=1$ değilse, bütün uzunluklar $r$ ile çarpılır ve yay uzunluğu şöyle bulunur:
$\alpha r = \pi rd/180.$ Formülde $d = 360^{\circ}$ iken çember uzunluğu $2\pi r$ olarak doğrulanır.

2. $T = (\alpha+\beta+\gamma-\pi)$ ifadesini derece ölçüsü ile, sağ tarafı $r^2$ ile çarparak yazın
3. Yerkürenin alanını 500 milyon km², Türkiye'nin alanını 800 bin km² alarak, ülkemiz boyunda bir üçgenin iç açıları toplamını tahmin edin (cevap 181° civarında)
15.06.2020
3-4-5 Üçgeni
![]() |
| https://tr.pinterest.com/pin/436286282625753185/ |
![]() |
| f(b) fonksiyonu |
| b değerinden hesaplanan x, y ve Pisagor üçlüsü |
It is a fascinating thought that this chapter could have been written while Euclid was looking over my shoulder.
"Bu bölüm, Euclid omuzumun üstüden izlerken yazılabilirdi" düşüncesi büyüleyici...
E W Dijkstra (1976), A Discipline of Programming, Prentice-Hall, p. 6
![]() |
| Matematikte "en iyiyi buldum" diyemezsiniz! |
7.06.2020
Çarpışan Toplar
Söz konusu yazılımın evrimini anlatırken, toplam kinetik enerjinin sabit kaldığı esnek çarpışma varsayımını kullanacağız. Momentumun korunumu da en temel mekanik kuralı...
Tek boyutlu çarpışma
Eşit kütleli iki top doğru bir hat üstünde çarpışırsa iki topun hızı yer değiştirir. Bilardo masasından bir örnek verelim: Hareketsiz duran bir topa tam ortasından çarpan ikinci top durur ve ilk top aynı hızla harekete geçer. Şimdi bu sonuca denklemlerden ulaşalım:
$v_1, v_2$ topların ilk hızını göstersin. Tek boyutlu hızları modellemek için işaretli sayılar (tek boyutlu vektör) yeterli. Hız pozitif ise top eksen yönünde sağa doğru, negatif ise ters yönde sola doğru hareket ediyor.
Toplam momentum ve enerjinin sabit kaldığı tek çözüm $v'_1 = v_2, v'_2 = v_1$ olarak bulunur, her top diğerinin ilk hızını alır.
Kütleler eşit değilse, işlemler biraz daha uzun sürer ve şu sonuca ulaşılır:
![]() |
İki boyut, eşit kütleler
Daha ilginç çarpışmaları anlamak için ikinci ve üçüncü boyuta geçmek lazım. Vektör yaklaşımı kullanırsak boyut sayısı hiç önemli değil, aynı formüller geçerli. Önce iki eşit kütle ile başlayalım.
İki top dokunduğu anda merkezleri birleştirelim. Hız değişimi sadece bu doğrultuda $(\Delta \mathbf{x})$ gerçekleşir. Buna dik olan hızlar asla değişmez. O halde ilk hızın $\Delta \mathbf{x}$ vektörüne paralel bileşeni (izdüşümü) diğer topa geçecek, dik bileşen ise ilk topta kalacaktır:
Hareketli resimdeki en önemli kare, ilk hızı ve iki bileşenini gösteriyor:
İzdüşüm hesabı lineer cebirin en temel konularından biridir:
$$ \mathbf{a_x} = \frac {\langle\mathbf{a}, \mathbf{x}\rangle}{\langle\mathbf{x}, \mathbf{x}\rangle} \mathbf{x} \quad \textit{projection of } \mathbf{a} \textit{ on } \mathbf{x} $$
Çarpışma problemine uygulayınca, iki topun hız farkının $\Delta \mathbf{x}$ üstüne izdüşümünden şu sonuca varılır:
Genel çözüm
Çok boyutlu genel çözüm formülünü 2. referanstan alalım:
![]() |
| en.wikipedia.org/wiki/Elastic_collision |
Karmaşık görünen bu çözüm şöyle yazılınca epeyce basitleşir:
Bu genel çözümün iki farklı özel halini yukarıda incelemiştik:
1. Vektör yerine skalar $(P \Delta x = \Delta v)$ kullanırsak, formül tek boyuta indirgenir.
2. Eşit kütleler haline indirgemek için $m \text{ ve } k$ değerlerini silmek yeterli $(mk = 1)$.
Yazılımın ana hatları
Çarpışan iki top b2 ve b1 olsun. Topların yeri, hızı, kütlesi:
x2 = b2.pos, x1 = b1.pos v2 = b2.vel, v1 = b1.vel m2 = b2.size, m1 = b1.size
Çarpışma sonrası hızların hesabı şöyle yapılır:
let dx = b2.pos.minus(b1.pos) // x2-x1 let dv = b2.vel.minus(b1.vel) // v2-v1 let m = b1.size + b2.size // m1+m2 let kP = (2/m)*dv.inner(dx)/dx.inner(dx) b1.vel.add(+kP*b2.size, dx) b2.vel.add(-kP*b1.size, dx)
Bu formülü uygulamadan önce, iki topun tam dokunduğuna emin olmak gerekir. Benzetim sırasında zaman sürekli akmadığı için, çarpışmayı fark ettiğimizde iki top birbirinin içine girmiş olabilir. Dokunma zamanını hesaplayıp tam o andaki koordinatları kullanmak gerekiyor.
let a = dv.inner(dv) // |Δv|² if (a < 0.0001) continue //same velocity let b = dv.inner(dx)/a // <Δv,Δx>/<Δv,Δv> let c = (dx.inner(dx) - m*m)/a //solve t² + 2b*t + c = 0 if (b*b < c) continue //no real solution if (1+2*b+c > 0) continue //solution t>1 let tt = (-b-Math.sqrt(b*b-c)) b1.update(tt); b2.update(tt)
Uygulamadaki en önemli zorluk, topların sayısı artınca ortaya çıkıyor. Aynı zaman aralığında bir top iki topa birden çarparsa, iki çarpışmayı zaman sırasında ayrı ayrı ele almak gerekiyor. Aynı aralıkta ikiden fazla çarpışma olursa basit formüller hata veriyor ve süreksiz bir hareket gözleniyor. Top sayısının girildiği kutunun rengi (beyazdan sarı ve kırmızıya) bu durumun işareti: Temel varsayımın ihlali nedeniyle benzetim doğru çalışmıyor. Top sayısını azaltmak gerekecek. (Formülün ilginç bir sonucu olarak, toplam enerjinin bu halde bile korunduğunu gözledik)
Doğrulama (validation)
Her benzetim çalışmasının doğrulanması gerekir. (Ref: Osman Balcı) Bu yazılımda iki doğrulama aracı kullandım:
1. Toplam enerji on binlerce çarpışma sonunda aynı kalıyor, o halde esnek çarpışmalar doğru modellenmiş (Dev Tools'da total() yazarak bunu görebilirsiniz)
2. Görsel doğrulama. Programın ilk sürümünde ilginç hatalar gözledik:
* toplar birbirine kenetlenip dönüyordu
* görünen topların sayısı zamanla azalıyordu
* ekranın kenarlarına takılıp kalan toplar vardı
Bunların hepsi yukarıda anlatılan hassas zaman hesabı ile düzeltildi
Referans
1. Mozilla eğitim sayfalarında uygulamanın temelini buldum (bu modelde toplar birbirinin içinden geçerken sadece renk değiştiriyor, hızları aynı kalıyor)
2. Genel anlatım ve çözüm formülü Wikipedia'da:
https://en.wikipedia.org/wiki/Elastic_collision
3. Esnek çarpışmaları vektörlerle modelleyen bir makale ve Bouncescope uygulaması:
http://www.vobarian.com/collisions/
4. Yazılım sayfası:
https://maeyler.github.io/JS/canvas/colliding
17.03.2020
TC Kimlik Numarası
① Verilen $s$, 11 basamaklı bir sayı olmalı (ilk basamak 0 olamaz)
Sayımız bu testi geçiyorsa, üç değere bakalım:
$a = 0, 2, 4, 6, 8.$ basamakların toplamı
JavaScript uygulaması
Örnek sayfamız ve referanslar şu linkte:
https://maeyler.github.io/JS/math/TCKimlik.html
3. Kimlik numaralarının çift sayı olması gerektiğini hangi kural söylüyor?
15.06.2019
Köşegenler
İki boyutlu şekillerle başlayalım. Köşegen uzunluğu d olsun:
- Üçgen: köşegen yok
- Dörtgen (Kare): d²=2
- Beşgen: d²=φ+1 (altın oranın karesi)
- Altıgen: iki çeşit köşegeni var, d²=3, d²=4
- Sekizgen: üç çeşit köşegen
- Dört-yüzlü (tetrahedron): köşegen yok
- Sekiz-yüzlü (octahedron): d²=2
- Yirmi-yüzlü: iki çeşit, d²=φ+1, d²=φ+2
- Küb: iki çeşit, d²=2, d²=3
- Oniki-yüzlü: dört çeşit köşegen
Küboktahedron
Aslında, kübün içinde bir değil, tam 4 adet altıgen gizli. Bu altıgenlerden yapılan cisim üstünde biraz uğraşmaya değer, çünkü üç çeşit köşegeni var.
Kübün kenar ortaları bu cismin köşeleri olduğuna göre, her köşe (0, ±b, ±b) koordinatlarının permütasyonları olmalı. Yani 12 adet köşe noktası var.
Kıyas için seçilen u = (0, b, b) köşesinin diğer köşelere uzaklığını d² = |u−v|² formülünden kolayca hesaplayabiliriz:
Köşe v u−v d² u=(0, b, b) (0, 0, 0) 0 v1=(b, 0, b) (−b,b, 0) 2b²=1 v2=(0, b,−b) (0, 0,2b) 4b²=2 v3=(b, 0,−b) (−b,b,2b) 6b²=3 v4=(0,−b,−b) (0,2b,2b) 8b²=4
Kenar uzunluğunu 1 yapmak için b² = 1/2 almak zorundayız. Böylece köşegen uzunluklarının kareleri, (dörtgen ve altıgende olduğu gibi) yine tam sayılar çıkıyor: 2, 3, 4.
Söz konusu geometri olunca, uzunlukla birlikte açıları da ölçmek gerekir. Köşe noktalarının bir küre üstünde olduğunu biliyoruz, çünkü her v için |v| = 2b² = 1. Buradan u ile v arasındaki açı cos θ = <u,v> olarak hesaplanır:
Köşe v <u,v> Açı u=(0, b, b) 2b²=1 0 v1=(b, 0, b) b²=1/2 60° v2=(0, b,−b) 0 90° v3=(b, 0,−b) −b²=−1/2 120° v4=(0,−b,−b) −2b²=−1 180°
Uzaklığın karesi ile cos θ arasındaki ilişki doğrusal olmalı:
d² = |u|² + |v|² − 2<u,v> = 2|u|²(1−cos θ)
Yazılım
Oktahedral simetri sahibi bazı cisimlerin köşegen uzunluğunu hesaplayan yazılımın ürettiği tablo aşağıda. Mesela Küb için verilen sayıların anlamı şöyle: Bir v köşesi seçelim. Bu köşeye 0 uzaklıkta sadece 1 köşe var (v). Birim (1) uzaklıkta 3 köşe komşu kenarlarla belirleniyor. Ayrıca √2 uzunlukta 3 adet ve √3 uzunlukta 1 adet köşegen var.
https://maeyler.github.io/JS/math/Octahedral.html
Kesik oktahedron (sekiz-yüzlü)
Dörtgenler ve altıgenlerden yapılan daha karmaşık bir cisim sırada: tam dokuz çeşit köşegeni var, üstelik uzunluklarının kareleri [2, 10] aralığında ardışık tamsayılar.
![]() |
| Kesik sekiz-yüzlü |
Köşe v u−v d² u=(0, b, 2b) (0, 0, 0) 0 v1=(b, 0, 2b) (−b, b, 0) 2b²=1 v2=(0,−b, 2b) (0, 2b, 0) 4b²=2 v3=(2b, 0, b) (−2b,b, b) 6b²=3 v4=(2b, b, 0) (−2b,0,2b) 8b²=4 v5=(0, 2b,−b) (0, −b,3b) 10b²=5 v6 = −v4 (2b,2b,2b) 12b²=6 v7 = −v3 (2b, 0,3b) 14b²=7 v8 = −v2 (0, 0, 4b) 16b²=8 v9 = −v1 (b, b, 4b) 18b²=9 v10 = −u (0,2b, 4b) 20b²=10
Küboktahedron için yapılan hesap burada da geçerli. Kenar uzunluğunun 1 olması için yine b² = 1/2 almak zorundayız. Tek fark, kürenin yarıçapı burada 1'den büyük:
|u|² = 5b² = 5/2, yani |u| ≈ 1.581
Açı hesabı da aynı şekilde yapılır:
d² = 2|u|²(1−cos θ) = 5(1−cos θ)
Mesela u ile v2 arasındaki açı, 3-4-5 dik üçgeninin büyük dar açısına eşit:
cos θ = <u,v>/(|u||v|) = 3b²/5b² = 0.6, yani θ≈53.1°
![]() |
| Kesik sekiz-yüzlü -- çubuk modeli |
Ödev
1. Altıgen ve sekizgenin köşegen uzunluklarını hesaplayın
2. Küboktahedronun diğer 7 köşesi için uzunlukları hesaplayın
3. Kesik oktahedron için diğer açıları hesaplayın
Referans
https://paulscottinfo.ipage.com/polyhedra/semiregular/trunc-octah.html
Kesik Sekiz-yüzlü
![]() |
| Kesik sekiz-yüzlünün origami modeli |
* Bu cismin kopyaları ile uzayı boşluksuz doldurabiliriz (Kübün benzeri)
* Köşegen uzunluklarının kareleri [2, 10] aralığında ardışık tamsayılardır
Köşegenler sayfasında bu ikinci sonucu lineer cebir yardımı ile kolayca kanıtlamıştık. Cebir bilmeyen Öklid ve çağdaşları aynı hesabı nasıl yapardı? Cismi, kare yüzeylerden birine paralel olarak tam ortasından kesince düzgün olmayan bir sekizgen çıkıyor:
Bu ikizkenar sekizgenin 4 kenarı altıgenlerin kenarı olduğu için 1 uzunluktadır. Diğer 4 kenar ise karelerin köşegeni olarak √2 uzunlukta. Şekilde görülen köşegen uzunlukları, sadece dik üçgenleri kullanarak, Pisagor zamanında bile hesaplanabilirdi. Kırmızı üçgenin hipotenüsü √5 ve kırmızı karenin köşegeni √10 olarak hemen bulunur. Bu köşegen aynı zamanda, 8 köşeden geçen çemberin çapıdır. Çapı gören çevre açılar 90° olduğundan, mavi üçgenler dik üçgendir ve şekilde gösterilen uzunluklar kolayca bulunur.
Böylece, üç boyutlu cismin 5 farklı köşegenini iki boyutlu sekizgen üstünde görmüş olduk: √2, √5, √8, √9 ve √10. Ya diğer tamsayılar? √3 ve √4 sayılarını altıgen yüzeylerin köşegeni olarak hemen tanıyoruz. √7 ve √6 ise, aynı köşegenler üstünde çapı gören dik üçgenlerin uzun kenarları...
Köşegen uzunlukları, aynı zamanda maksimum uzaklıkları da gösteriyor:
* iki altıgen yüzey arası √6
* iki kare yüzey arası √8
* iki kenar arası √9
* iki köşe arası √10
Origami
Kesik sekiz-yüzlünün kağttan modelini yapmak için çok sayıda origami yaklaşımı var. Daha önce başka bir konuda anlatılan altıgen modelini kullanarak sayfanın başında gösterilen cismi yapabiliriz.
https://eyler.blogspot.com/2010/12/duzgun-altgen.html
Kesik sekiz-yüzlüden önce, daha basit kardeşi kesik dört-yüzlüyü yapalım. Altıgen modelimizden iki adet gerekiyor:
![]() |
| Modellerin biri sağa biri sola bakıyor |
![]() |
| Altıgen ve kesik dört-yüzlü |
![]() |
| Kesik sekiz-yüzlü için 4 parça lazım |
![]() |
| Çubuk modeli içinde origami örneği |
Ödev:
1. Şekildeki ikizkenar sekizgenin köşe koordinatlarını ve köşegen uzunluklarını cebirsel olarak bulun. (ipucu: z = 0 düzleminde çalışın)
2. Kare yüzeylerin denklemlerini bulun ve karşılıklı iki kare arasındaki uzaklığın √8 olduğunu gösterin.
3. Altıgen yüzeylerin denklemlerinin ±x±y±z = 3b olduğunu ve karşılıklı iki altıgen arasındaki uzaklığın √6 olduğunu gösterin. (ipucu: iki yüzeyin orta noktalarını bulun)
1.06.2019
Lineer Denklemler
1. Ah = 0 denklem sisteminin genel çözümü nedir?
2. A'nın satırlarından elde edilen alt-uzay nedir?
3. A'nın sütunları arasında nasıl bir ilişki vardır?
Denklem sayısı (m) ile bilinmeyen sayısı (n) eşit olduğunda, katsayılar matrisi tekil (singular) değilse tek çözüm vardır. Bu durumda Ax = b denklem sistemi, matrisin tersini alarak çözülür. Denklem sayısı büyükse matrisin tersini hesaplamak zahmetli olabilir, yine de tek çözüm vardır ve başka yöntemlerle kolayca hesaplanabilir. Çözüm tek olduğu için, bu durumda söylenecek başka bir söz kalmıyor, yukarıdaki soruların cevapları hiç ilginç değil:
1. Ah = 0 denklem sisteminin tek çözümü var: h = 0
2. A'nın satırları bağımsız olduğu için, satırlar bir baz oluşturur
3. A'nın sütunları bağımsız olduğu için, aralarında bir ilişki yok
Öte yandan, m<n ise sistemin sonsuz çözümü olabilir ve yukarıdaki soruların cevabını indirgenmiş matristen bulabiliriz. Üç bilinmeyenli iki denklem ile başlayalım (m=2, n=3) :
1x + 2y + 2z = 0Bu sistemde denklem sayısı yeterli değil, sonsuz çözüm olmalı. Verilen değerleri bir A matrisine kaydedelim ve standart satır işlemleri kullanarak R matrisine indirgeyelim. "Tek çözüm" durumunda söz konusu olmayan bazı bilgilere bu matristen erişeceğiz.
2x + 5y + 3z = 0
(Bu sayfadaki örnekleri çözmek için yazılım gerekmiyor ama çözümü hızlandırdığı için kullanmayı tavsiye ediyorum. Buradaki bütün örnekleri Solver menüsünde bulacaksınız. "Solve" butonuna basmak yeterli olmuyorsa, manuel satır işlemleri ile sonuca ulaşılır.)
Bu tablodaki sayılar ile genel çözüme ulaştık:
x + 4z = 0R matrisinde okunan 4 ve −1 değerleri, üç farklı uzayı tanımlıyor ve yukarıda verilen soruları cevaplıyor:
y − z = 0
Öncelikle, iki pivot olduğu için rank(A) = 2
1. Sıfır uzayı (Null space): verilen Ah = 0 denklem sisteminin genel çözümü.
Baz: h = (−4, 1, 1)
Pivot değişkenler x=−4z ve y=z olduğundan, çözüm h vektörünün katlarıdır. Pivot değişkenleri serbest z değişkeni cinsinden ifade edince, üç boyutlu uzayın tek boyutlu bir alt uzayı, zh doğrusu bulunur.
2. Satır uzayı (Row space): A'nın satırlarından elde edilen bütün denklemler.
Baz: R1 = (1, 0, 4), R2 = (0, 1, −1)
Mesela, orijinal sistemdeki satırlar şöyle hesaplanır:
1 R1 + 2 R2 = (1, 2, 2)Satır uzayı bu iki vektörün tanımladığı
2 R1 + 5 R2 = (2, 5, 3)
z = 4x−y düzlemidir. (neden?)Bu düzlemin ve baz vektörlerinin, h vektörüne dik olduğuna dikkat! (neden?)
3. Satır uzayı iki boyutlu olduğundan, Sütun uzayı da öyle olmalı. Demek ki iki sütun yeterli, serbest değişkene karşı gelen C3, diğer iki sütun cinsinden yazılabilir. A ve R matrislerinin her satırı için z = 4x−y olduğuna göre, aynı ifade sütunlar için de geçerli:
C3 = 4C1 − C2Cevapların içinde, R matrisinde okunan değerler açıkça yer alıyor.
Özet: R matrisindeki 4 ve −1 değerlerini kullanarak ulaştığımız sonuçlar:
Ödev
1. Aşağıdaki örneklerde bir değişken daha eklenmiş. Alt-uzay bazlarını bulun ve sütunlar arasındaki ilişkiyi sağlayın. [Fakıoğlu s.121, s.123]
ipucu: rank(A) = 4, yani 4 adet pivot olmalı.
3. Aynı kısımda son örneğe bakalım: [Fakıoğlu s.124]
3. M Akif Eyler, Solver (2019) -- Lineer denklemler için yazılım desteği






































