Как определить функцию Бесселя ряда и ее производную для сложного аргумента в математике?

Аргумент сферической функции Бесселя является произведением комплексного числа на действительное число, т. е. p. Я хочу найти Psi(p)=p*Series[SphericalBesselJ[1.5,p],{p,0,5}]. Пожалуйста, следуйте следующей программе:

Subscript[ω, L] = 2*π*570;
Subscript[ω, T] = 2*π*240; 
Subscript[γ, 1] = 2*π*2.5;
Subscript[ϵ, ∞] = 17; 
Subscript[ϵ, 1] = 
 Subscript[ϵ, ∞]*(1 + ((Subscript[ω, L]^2 - 
        Subscript[ω, T]^2)/(Subscript[ω, T]^2 - ω^2 - ω*
         Subscript[γ, 1]))); Subscript[ω, p] = 2*π*134; 
Subscript[γ, 2] = Subscript[ω, p]/60; 
Subscript[ϵ, 2] = 1 - (Subscript[ω, p]^2/(ω^2 + I*ω*Subscript[γ, 2])); 
Subscript[n, 1] = Sqrt[Subscript[ϵ, 1]]; 
Subscript[n, 2] = Sqrt[Subscript[ϵ, 2]];
Subscript[ϵ, 3] = 2; 
Subscript[n, 3] = Sqrt[Subscript[ϵ, 3]]; 
Subscript[m, 1] = Subscript[n, 1]/Subscript[n, 3]; 
Subscript[m, 2] = Subscript[n, 2]/Subscript[n, 3];
c = 3;
Subscript[k, 3] = ω/c; 
Subscript[r, 1] = 0.13;
x = Subscript[k, 3]*Subscript[r, 1];
p = Subscript[m, 2]*x;
ψ[p] = p*Series[SphericalBesselJ[1.5, p], {p, 0, 5}]

Ошибка следующая:

General::ivar: 3.06413 ([Pi]:300 [Pi]) Sqrt[1-(71824 [Pi]^2)/(1340/3 I [Pi] Pattern[‹‹2>>]+10000 Power[‹ ‹2>>])] недопустимая переменная. >>

Rule::rhs: Шаблон [Pi]:300 [Pi] отображается в правой части правила Sqrt[(53868 I [Pi]^2+335 [Pi] ([Pi]:300 [Pi])-7500 I ([Pi]:Times[‹‹2>>])^2)/((67 [Pi]-1500 I ([Pi]:Times[‹‹2>>])) ([Pi]:300 [ Pi]))]->Sqrt[5] Sqrt[1-(71824 [Pi]^2)/(Times[‹‹3>>]+Times[‹‹2>>])]. >>

Rule::rhs: Шаблон [Pi]:300 [Pi] отображается в правой части правила Sqrt[(53868 I [Pi]^2+335 [Pi] ([Pi]:300 [Pi])-7500 I ([Pi]:Times[‹‹2>>])^2)/((67 [Pi]-1500 I ([Pi]:Times[‹‹2>>])) ([Pi]:300 [ Pi]))]->Sqrt[5] Sqrt[1-(71824 [Pi]^2)/(Times[‹‹3>>]+Times[‹‹2>>])]. >>

Rule::rhs: Шаблон [Pi]:300 [Pi] отображается в правой части правила Sqrt[(53868 I [Pi]^2+335 [Pi] ([Pi]:300 [Pi])-7500 I ([Pi]:Times[‹‹2>>])^2)/((67 [Pi]-1500 I ([Pi]:Times[‹‹2>>])) ([Pi]:300 [ Pi]))]->Sqrt[5] Sqrt[1-(71824 [Pi]^2)/(Times[‹‹3>>]+Times[‹‹2>>])]. >>

General::stop: Дальнейший вывод Rule::rhs будет подавлен во время этого вычисления. >>

General::ivar: 3.06413 ([Pi]:300 [Pi]) Sqrt[1-(71824 [Pi]^2)/(1340/3 I [Pi] Pattern[‹‹2>>]+10000 Power[‹ ‹2>>])] недопустимая переменная. >>

General::ivar: 3.06413 ([Pi]:300 [Pi]) Sqrt[1-(71824 [Pi]^2)/(1340/3 I [Pi] Pattern[‹‹2>>]+10000 Power[‹ ‹2>>])] недопустимая переменная. >>

General::stop: Дальнейший вывод General::ivar будет подавляться во время этого вычисления. >>


person user3914003    schedule 13.10.2014    source источник


Ответы (1)


Прежде всего, я собираюсь посоветовать не использовать индексы. Это не источник вашей проблемы, но по моему опыту они, как правило, ужасны. Несмотря на это, есть две проблемы, и обе они исходят из вашей последней строки.

Во-первых, ψ[p] — это функция, верно? Тогда вы должны определить его как ψ[p_].

Во-вторых, вы уже присвоили значение p. Вы не сможете использовать его позже, иначе он попытается использовать существующее определение, а поскольку оно используется как переменная для вашей команды Series, оно пойдет наперекосяк. Это было бы похоже на попытку сделать это:

x = 3+7/2-11/5;
Series[Sin[x],{x,0,5}]

(* Вывод: General::ivar: 43/10 недопустимая переменная. >> Series[Sin[43/10], {43/10, 0, 5}] *)

Если вы действительно хотите определить эту функцию, а затем подставить значение p, попробуйте следующее:

ψ[q_] = q*Normal[Series[SphericalBesselJ[1.5, q], {q, 0, 5}]];
ψ[p]

Это определит вашу функцию, а затем подключит значение.

person Kellen Myers    schedule 20.10.2014