Досить простим методом було б вибрати основу в просторі функцій і перетворити інтегральне перетворення в матрицю. Тоді ви можете просто перевернути матрицю.
Математично, ось як це працює: вам потрібен певний набір ортонормальних базових функцій . (Ви можете піти без них бути нормалізовані теж, але це легше пояснити таким чином.) Ортонормального означає , що скалярний твір ⟨ T я , T J ⟩ = δ I J , деTi(x)⟨Ti,Tj⟩=δij
⟨Ti,Tj⟩≡∫baW(x)Ti(x)Tj(x)dx=δij(1)
Тут - деяка вагова функція. Це і межі a і b прив'язані до вашого вибору T i . Вибравши, який набір базових функцій використовувати, ви зможете жорстко кодувати обмеження та функцію ваги у вашій програмі.W(x)abTi
Використовуючи ортонормальність, ви можете виразити будь-яку функцію, таку як та F ( y ) , як лінійні комбінації цих базових функцій:f(x)F(y)
f(x)=∑iciTi(x)F(y)=∑jCjTj(y)(2)
де коефіцієнти обчислюються як
ciCj=⟨f,Ti⟩=∫baW(x)f(x)Ti(x)dx=⟨F,Tj⟩=∫baW(y)F(y)Tj(y)dy(3)(4)
Ви можете переконатись, що ці вирази відповідають визначенню коефіцієнтів, екв. (2), і ортонормічність, ек. (1).
Тепер обчисліть перетворення кожної з базових функцій; назвемо це .T~i(y)
T~i(y)≡∫∞0yexp[−12(y2+x2)]I0(xy)Ti(x)dx
- це функція, і тому ви можете виразити її як лінійну комбінацію базових функцій так само, як ми це зробили зf(x)таF(y):T~i(y)f(x)F(y)
T~i(y)=∑kAikTk(y)
де елементи матриці визначаються так само, як ми знайшли c i та C j вище:AikciCj
Aik=⟨T~i,Tk⟩=∫baW(y)T~i(y)Tk(y)dy(5)
ikTi(x)W(x)
AikciCjf(x)F(y)
∑jCjTj(y)F(y)=∫∞0yexp[−12(y2+x2)]I0(xy)∑iciTi(x)f(x)dx=∑ici∫∞0yexp[−12(y2+x2)]I0(xy)Ti(x)dx=∑ici∑kAikTk(y)
CℓTℓ
⟨(∑jCjTj),Tℓ⟩∫baW(y)∑jCjTj(y)Tℓ(y)dy∑jCj∫baW(y)Tj(y)Tℓ(y)dy∑jCjδjℓCℓ=⟨(∑ici∑kAikTk),Tℓ⟩=∫baW(y)∑ici∑jAikTk(y)Tℓ(y)dy=∑ici∑kAik∫baW(y)Tk(y)Tℓ(y)dy=∑ici∑kAikδkℓ=∑iciAiℓ
ℓCj
CjciAijciAijCjF(y)
F(y)Cj
Cj=∑iciAij
A
ij1NNf(x)T1(x),…,TN(x)1MF(y)T1(y),…,TM(y)M=NMNNciAM×NA11ANM
[−1,1]TiW(x)=11−x2√a=−1b=1⟨Ti,Tj⟩=δijπ/2i=j≠0⟨T0,T0⟩=π