• Eğitim sadece okula gitmek ve bir derece kazanmakla ilgili değildir. Bilginizi genişletmek ve yaşam hakkındaki gerçeği almakla ilgilidir. – Shakuntala Devi

Tekillikli diferansiyel denklemler sayısal olarak nasıl çözülür?

Safiye

Yeni Üyemiz
Bir diferansiyel denklemi sayısal olarak çözmek istiyorum. Örnek olarak Hipergeometrik diferansiyel denklemi çözmeye çalıştım.

Block[{a = 1.23, b = 2.87, c = 2.76},
s = NDSolve[{z (1 - z) w''[z] + (c - (a + b + 1) z) w'[z]- a b w[z] == 0, w[0] == 1, w'[0] == (a b)/c}, w, {z, -10, 10},
SolveDelayed -> True]]

Yukarıdakilerle birlikte, çözümü bulmaya çalışırsam aşağıdakileri elde ederim

In[]: Block[{a = 1.23, b = 2.87, c = 2.76, z = -1.23}, {Hypergeometric2F1[a, b, c, z], w[z] /. s}]
Out[]: {0.360842, {0.360842}}

bu gerçekten doğru ve bana herhangi bir değer için doğru sonucu veriyorİle< 1İle<1. Ama bir noktada aynı şeyi değerlendirmeye çalıştığımdaİle> 1İle>1daha sonra "nokta enterpolasyondaki veri aralığının dışındadır" uyarısını verir.

Anladığım kadarıyla bu tekil noktadan kaynaklanıyor olabilirİle=1İle=1Diferansiyel denklemin sorunu bu olabilir, ancak bu sorunu aşmanın bir yolunu bulamıyorum. Bu sorunu çözmek için ne yapabilirim?

Ek bir soru olarak tekil noktalı genel bir diferansiyel denklem verildiğinde bunu sayısal sonuçlar elde edecek şekilde çözmek mümkün müdür? Örnek alarak2F12�1, eğer puan olarak değerini bulmam gerekiyorsa| İle| >1|İle|>1o zaman analitik devam formülünü kullanmalıyım. Diferansiyel denklemi sayısal olarak çözerek sonuca ulaşmak mümkün müdür?

Düzenleme 1: Biraz daha denedim ama yine de Mathematica'nın dahili işlevi kullanılarak değerlendirilenle eşleşmiyor. Sonuç karmaşıktır ancak diferansiyel denklemlerin çözümü tamamen gerçek bir sonuç verir ki bu açıkça yanlıştır. Şube kesimi var[1,∞)[1,∞).
 
Çözüm
Hipergeometrik fonksiyon terimi kökenine, geometrik seriye işaret eder.

(1-x)^-1 = Sum[x^n,{n,0,oo}

Bu serinin x=1 noktasında bir kutbu vardır ve karmaşık açık birim çemberde birleşir.

Bu seriyi gerçek eksen üzerindeki noktalarda ortalanmış daha büyük dairelerde kullanmak sorun değil

(1-(x-a)^-1 = (1+a-x )^-1 = (1+a)^-1 * (1- x/(1+a))^-1

a=1 hariç. Bunun nedeni 1/x fonksiyonunun kuvvet serisi gösteriminin olmamasıdır. Tek terimli kendi Laurent serisidir.

Buradan otomatik olarak tüm güç serilerinin katsayılarının n->oo için 1'e yaklaştığı ve z=1'de tek bir kutup ürettiği gerçeğini paylaştığı sonucu çıkar. Herhangi bir değerlendirme prosedüründe z=1 noktasındaki kutuptan kaçınmak gerekir.

Gauss hipergeometrik fonksiyonlarının...
Hipergeometrik fonksiyon terimi kökenine, geometrik seriye işaret eder.

(1-x)^-1 = Sum[x^n,{n,0,oo}

Bu serinin x=1 noktasında bir kutbu vardır ve karmaşık açık birim çemberde birleşir.

Bu seriyi gerçek eksen üzerindeki noktalarda ortalanmış daha büyük dairelerde kullanmak sorun değil

(1-(x-a)^-1 = (1+a-x )^-1 = (1+a)^-1 * (1- x/(1+a))^-1

a=1 hariç. Bunun nedeni 1/x fonksiyonunun kuvvet serisi gösteriminin olmamasıdır. Tek terimli kendi Laurent serisidir.

Buradan otomatik olarak tüm güç serilerinin katsayılarının n->oo için 1'e yaklaştığı ve z=1'de tek bir kutup ürettiği gerçeğini paylaştığı sonucu çıkar. Herhangi bir değerlendirme prosedüründe z=1 noktasındaki kutuptan kaçınmak gerekir.

Gauss hipergeometrik fonksiyonlarının tanımlayıcı serilerinin tümü, n! büyük n için ve böylece katsayılar 1'e yaklaşarak en azından 1'deki kutbu oluşturur.

Ancak hepsi bu kadar değil: Katsayı serisi, serinin 1/n^k olarak yakınsayan alt serilerini içerecektir. Hepsi (1,oo) üzerinde (geleneksel olarak veya karmaşık düzlemde 1-oo noktalarını birleştiren bir eğri üzerinde başka bir yerde) bir dal kesimine sahip olan logaritmalar ve bunların integrallerini üretiyorlar.

Elbette istisnalar da vardır: İlk parametre negatif bir tam sayı ise seri sona erer ve bir polinom verir. Logaritmalardan kaçınan başka durumlar da mevcuttur.

Örnek

(Coefficient[ Normal@Series[Hypergeometric2F1[2, 3, 4, x],
{x, 1, 4}] , {(x - 1)^-1, Log[1 - x]}]) // FullSimplify

{-3, 6 (35 + x (-105 + x (126 + 5 x (-14 + 3 x))))}

Hypergeometric2F1[-3, 3, 4, x]

1/20 (20 - 45 x + 36 x^2 - 10 x^3)

Analist olmayanlar için temel kural: Tablolardaki bir fonksiyonun tanımında bir dal kesimi belirtilirse, karmaşık argümanın kesim üzerinde rasyonel çoklu q*pi adımını oluşturduğunu varsaymak her zaman iyi bir fikirdir ve ve karmaşık değerler exp(+-iqp)'ye göre farklılık gösterir. Logaritmanın standart durumu bir işaret değişikliğine neden olur; rasyonel kuvvetlerde bu, birim çember üzerinde bir faktördür.

Orijinal sorunun: Karmaşık düzlemde z1 noktasındaki kutbun nasıl aşılacağı sorusunun muhtemelen iki cevabı vardır: Üst veya alt düzlemde z=1 etrafındaki küçük bir yarım daire üzerinde integrasyon yapın. Açık güçlere ve z==1'deki günlüklere bağlı olarak sonuçlar, elde edilen aşamaların sayısına göre farklılık gösterir.

Görelim:

f = With[{a = 1.23, b = 2.87, c = 2.76},
NDSolveValue[{z (1 - z) w''[z] + (c - (a + b + 1) z) w'[z] - a b w[z] == 0,
w[2] == 1, w'[2] == (a b)/c},
w, {z, 1.2, 10} ]];

g = With[{a = 1.23, b = 2.87, c = 2.76},
DSolveValue[{z (1 - z) w''[z] + (c - (a + b + 1) z) w'[z] - a b w[z] == 0,
w[2] == 1, w'[2] == (a b)/c},
w, {z, 1.2, 10} ]]


Function[{z}, ((8.46197 + 1.35955 I) Hypergeometric2F1[-0.53,
1.11, -0.76, z])/z^( 44/25) - (10.5438 - 1.56523 I) Hypergeometric2F1[1.23, 2.87, 2.76, z]]


Plot[{f[x], g[x]}, {x, 1.2, 10}, PlotStyle -> {{Red, Thickness[0.02]}, {Black}}]
JPt3r.png

ComplexPlot3D[g[z], {z, -1 - I, 2 + I}]
GUntD.png

Pozitif gerçek çizgi x>1 boyunca kesilen bir dalın olduğu açıktır ve kesin bir açıklama olmadan bu tür tanımlar yalnızca karmaşık analistler ve teorik fizikçiler için değer taşır.

Sebebi: Kesikler boyunca bu tür integraller tipik olarak zaman ve uzayda ikinci dereceden dalga denklemlerinin Fourier dönüşümleri ile çözümleri olarak ortaya çıkar. Kesimdeki iki farklı çözüm, çözüm uzayının zaman ileri ve geri zaman olarak bölünmesine karşılık gelir. Bu iki sınıfın cebirsel ve fiziksel olarak pek fazla ortak yanı olmadığı açıktır. İleri mod, gelecekte alıcı topluluğa gönderilecek bir sinyalin hazırlanmasında kullanılır, geri modlar seti ise gelen sinyalleri analiz etmek için kullanılır.
 
Çözüm
Geri
Üst