1 @c Language: Brazilian Portuguese, Encoding: iso-8859-1
2 @c /Special.texi/1.29/Sat Jun 2 00:13:09 2007/-ko/
4 * Introdução a Funções Especiais::
5 * Funções e Variáveis Definidas para Funções Especiais::
8 @node Introdução a Funções Especiais, Funções e Variáveis Definidas para Funções Especiais, Funções Especiais, Funções Especiais
9 @section Introdução a Funções Especiais
11 A notação de função especial segue adiante:
14 bessel_j (index, expr) Função de Bessel, primeiro tipo
15 bessel_y (index, expr) Função de Bessel, segundo tipo
16 bessel_i (index, expr) Função de Bessel modificada, primeiro tipo
17 bessel_k (index, expr) Função de Bessel modificada, segundo tipo
18 %he[n] (z) Polinômio de Hermite (Note bem: @code{he}, não @code{h}. Veja A&S 22.5.18)
19 %p[u,v] (z) Função de Legendre
20 %q[u,v] (z) Função de Legendre, segundo tipo
21 hstruve[n] (z) Função H de Struve H
22 lstruve[n] (z) Função L de Struve
23 %f[p,q] ([], [], expr) Função Hipergeométrica Generalizada
25 gamma_incomplete_lower(a,z) Função gama incompleta inferior
26 gammaincomplete(a,z) Final da função gama incompleta
27 @c IS slommel THE "LOMMEL" FUNCTION ?? NOT OTHERWISE MENTIONED IN TEXINFO FILES
29 %m[u,k] (z) Função de Whittaker, primeiro tipo
30 %w[u,k] (z) Função de Whittaker, segundo tipo
31 erfc (z) Complemento da função erf (função de erros - integral da distribuição normal)
32 ei (z) Integral de exponencial (?)
33 kelliptic (z) integral eliptica completa de primeiro tipo (K)
34 %d [n] (z) Função cilíndrica parabólica
37 @node Funções e Variáveis Definidas para Funções Especiais, , Introdução a Funções Especiais, Funções Especiais
38 @section Funções e Variáveis Definidas para Funções Especiais
40 @deffn {Função} airy_ai (@var{x})
41 A função de Airy Ai, como definida em Abramowitz e Stegun,
42 @i{Handbook of Mathematical Functions}, Sessão 10.4.
44 A equação de Airy @code{diff (y(x), x, 2) - x y(x) = 0} tem duas
45 soluções linearmente independentes, @code{y = Ai(x)} e @code{y = Bi(x)}.
46 A derivada de @code{diff (airy_ai(x), x)} é @code{airy_dai(x)}.
48 Se o argumento @code{x} for um número real ou um número complexo qualquer deles em ponto
49 flutuante , o valor numérico de @code{airy_ai} é retornado
52 Veja também @code{airy_bi}, @code{airy_dai}, @code{airy_dbi}.
56 @deffn {Função} airy_dai (@var{x})
57 A derivada da função de Airy Ai @code{airy_ai(x)}.
62 @deffn {Função} airy_bi (@var{x})
63 A função de Airy Bi, como definida em Abramowitz e Stegun,
64 @i{Handbook of Mathematical Functions}, Sessão 10.4,
65 é a segunda solução da equação de Airy
66 @code{diff (y(x), x, 2) - x y(x) = 0}.
68 Se o argumento @code{x} for um número real ou um número complexo qualquer deles em ponto flutuante,
69 o valor numérico de @code{airy_bi} é retornado quando possível.
70 Em outros casos a expressão não avaliada é retornada.
72 A derivada de @code{diff (airy_bi(x), x)} é @code{airy_dbi(x)}.
74 Veja @code{airy_ai}, @code{airy_dbi}.
78 @deffn {Função} airy_dbi (@var{x})
79 A derivada de função de Airy Bi @code{airy_bi(x)}.
81 Veja @code{airy_ai} e @code{airy_bi}.
84 @deffn {Função} asympa
85 @code{asympa} é um pacote para análise assintótica. O pacote contém
86 funções de simplificação para análise assintótica, incluindo as funções
87 ``grande O'' e ``pequeno o'' que são largamente usadas em análises de complexidade e
90 @code{load ("asympa")} chama esse pacote.
94 @deffn {Função} bessel (@var{z}, @var{a})
95 A função de Bessel de primeiro tipo.
97 Essa função está desatualizada. Escreva @code{bessel_j (@var{z}, @var{a})} em lugar dessa.
102 @deffn {Função} bessel_j (@var{v}, @var{z})
103 A função de Bessel do primeiro tipo de ordem @math{v} e argumento @math{z}.
105 @code{bessel_j} calcula o array @code{besselarray} tal que
106 @code{besselarray [i] = bessel_j [i + v - int(v)] (z)} para @code{i} de zero a @code{int(v)}.
108 @code{bessel_j} é definida como
112 ==== k - v - 2 k v + 2 k
114 > --------------------------
115 / k! gamma(v + k + 1)
123 ==== k - v - 2 k v + 2 k
125 > --------------------------
126 / k! gamma(v + k + 1)
133 $$\sum_{k=0}^{\infty }{{{\left(-1\right)^{k}\,\left(z\over 2\right)^{v+2\,k}
134 }\over{k!\,\Gamma\left(v+k+1\right)}}}$$
137 todavia séries infinitas não são usadas nos cálculos.
142 @deffn {Função} bessel_y (@var{v}, @var{z})
143 A função de Bessel do segundo tipo de ordem @math{v} e argumento @math{z}.
145 @code{bessel_y} calcula o array @code{besselarray} tal que
146 @code{besselarray [i] = bessel_y [i + v - int(v)] (z)} para @code{i} de zero a @code{int(v)}.
148 @code{bessel_y} é definida como
151 cos(%pi v) bessel_j(v, z) - bessel_j(-v, z)
152 -------------------------------------------
158 cos(%pi v) bessel_j(v, z) - bessel_j(-v, z)
159 -------------------------------------------
165 $${{\cos \left(\pi\,v\right)\,J_{v}(z)-J_{-v}(z)}\over{
166 \sin \left(\pi\,v\right)}}$$
169 quando @math{v} não for um inteiro. Quando @math{v} for um inteiro @math{n},
170 o limite com @math{v} aprocimando-se de @math{n} é tomado.
175 @deffn {Função} bessel_i (@var{v}, @var{z})
176 A função de Bessel modificada de primeiro tipo de ordem @math{v} e argumento @math{z}.
178 @code{bessel_i} calcula o array @code{besselarray} tal que
179 @code{besselarray [i] = bessel_i [i + v - int(v)] (z)} para @code{i} de zero a @code{int(v)}.
181 @code{bessel_i} é definida como
185 ==== - v - 2 k v + 2 k
187 > -------------------
188 / k! gamma(v + k + 1)
196 ==== - v - 2 k v + 2 k
198 > -------------------
199 / k! gamma(v + k + 1)
206 $$\sum_{k=0}^{\infty } {{1\over{k!\,\Gamma
207 \left(v+k+1\right)}} {\left(z\over 2\right)^{v+2\,k}}}$$
210 embora séries infinitas não são usadas nos cálculos.
215 @deffn {Função} bessel_k (@var{v}, @var{z})
216 A função de Bessel modificada de segundo tipo de ordem @math{v} e argumento @math{z}.
218 @code{bessel_k} calcula o array @code{besselarray} tal que
219 @code{besselarray [i] = bessel_k [i + v - int(v)] (z)} para @code{i} de zero a @code{int(v)}.
221 @code{bessel_k} é definida como
224 %pi csc(%pi v) (bessel_i(-v, z) - bessel_i(v, z))
225 -------------------------------------------------
231 %pi csc(%pi v) (bessel_i(-v, z) - bessel_i(v, z))
232 -------------------------------------------------
237 $${{\pi\,\csc \left(\pi\,v\right)\,\left(I_{-v}(z)-I_{v}(z)\right)}\over{2}}$$
240 quando @math{v} não for inteiro. Se @math{v} for um inteiro @math{n},
241 então o limite com @math{v} aproximando-se de @math{n} é tomado.
245 @defvr {Variável de opção} besselexpand
246 Valor padrão: @code{false}
249 Expansões de controle de funções de Bessel quando a ordem for a metade de
250 um inteiro ímpar. Nesse caso, as funções de Bessel podem ser expandidas
251 em termos de outras funções elementares. Quando @code{besselexpand} for @code{true},
252 a função de Bessel é expandida.
255 (%i1) besselexpand: false$
256 (%i2) bessel_j (3/2, z);
260 (%i3) besselexpand: true$
261 (%i4) bessel_j (3/2, z);
263 (%o4) sqrt(---) (------ - ------)
269 @deffn {Função} scaled_bessel_i (@var{v}, @var{z})
271 A função homotética modificada de Bessel de primeiro tipo de ordem
272 @math{v} e argumento @math{z}. Isto é, @math{scaled_bessel_i(v,z) =
273 exp(-abs(z))*bessel_i(v, z)}. Essa função é particularmente útil
274 para calcular @math{bessel_i} para grandes valores de @math{z}.
275 Todavia, maxima não conhece outra forma muito mais sobre essa função. Para
276 computação simbólica, é provavelmete preferível trabalhar com a expressão
277 @code{exp(-abs(z))*bessel_i(v, z)}.
281 @deffn {Função} scaled_bessel_i0 (@var{z})
283 Idêntica a @code{scaled_bessel_i(0,z)}.
287 @deffn {Função} scaled_bessel_i1 (@var{z})
289 Idêntica a @code{scaled_bessel_i(1,z)}.
293 @deffn {Função} beta (@var{x}, @var{y})
294 A função beta, definida como @code{gamma(x) gamma(y)/gamma(x + y)}.
295 @c SEEMS LIKE THERE SHOULD BE MORE TO SAY HERE
296 @c ANY SIMPLIFICATION RULES FOR THIS FUNCTION ??
300 @deffn {Função} gamma (@var{x})
303 @c SEEMS POINTLESS TO MENTION THE FOLLOWING IDENTITY,
304 @c AS MAXIMA DOESN'T SEEM TO CARRY OUT THIS SIMPLIFICATION
305 @c GAMMA(I)=(I-1)! for I a positive integer.
307 Veja também @code{makegamma}.
309 A variável @code{gammalim} controla a simplificação da função gama.
311 A constante de Euler-Mascheroni é @code{%gamma}.
315 @defvr {Variável de opção} gammalim
316 Valor padrão: 1000000
319 @code{gammalim} controla a simplificação da função
320 gama para integral e argumentos na forma de números racionais. Se o valor
321 absoluto do argumento não for maior que @code{gammalim}, então
322 a simplificação ocorrerá. Note que @code{factlim} comuta controle de
323 simplificaçcão do resultado de @code{gamma} de um argumento inteiro também.
327 @c NEED EXAMPLES HERE
328 @deffn {Função} intopois (@var{a})
329 Converte @var{a} em um código de Poisson.
333 @c NEED CROSS REFS HERE
334 @c NEED EXAMPLES HERE
335 @deffn {Função} makefact (@var{expr})
336 Transforma instâncias de funções binomiais, gama,
337 e beta em @var{expr} para fatoriais.
339 Veja também @code{makegamma}.
343 @c NEED CROSS REFS HERE
344 @c NEED EXAMPLES HERE
345 @deffn {Função} makegamma (@var{expr})
346 Transforma instâncias de funções binomiais, fatorial,
347 e beta em @var{expr} para funções gama.
349 Veja também @code{makefact}.
353 @c AREN'T THERE OTHER FUNCTIONS THAT DO ESSENTIALLY THE SAME THING ??
354 @deffn {Função} numfactor (@var{expr})
355 Retorna o fator numérico multiplicando a expressão
356 @var{expr}, que pode ser um termo simples.
358 @c WHY IS content MENTIONED IN THIS CONTEXT ??
359 @code{content} retorna o máximo divisor comum (mdc) de todos os termos em uma adição.
374 @c NEED EXAMPLES HERE
375 @deffn {Função} outofpois (@var{a})
376 Converte @var{a} de um código de Poisson para uma representação
377 geral. Se @var{a} não for uma forma de Poisson, @code{outofpois} realiza a conversão,
378 i.e., o valor de retorno é @code{outofpois (intopois (@var{a}))}.
379 Essa função é desse modo um simplificador canônico
380 para adições e potências de termos de seno e cosseno de um tipo particular.
384 @c NEED MORE INFO HERE
385 @c NEED EXAMPLES HERE
386 @deffn {Função} poisdiff (@var{a}, @var{b})
387 Deriva @var{a} em relação a @var{b}. @var{b} deve ocorrer somente
388 nos argumentos trigonométricos ou somente nos coeficientes.
392 @c LOOKING AT THE CODE IN src/pois3.lisp, THIS FCN SEEMS TO COMPUTE THE EXPONENT BY MULTIPLYING IN A LOOP
393 @c DUNNO HOW WE WANT TO EXPLAIN THAT
394 @c REPHRASE WITHOUT USING THE TERM "FUNCTIONALLY IDENTICAL"
395 @deffn {Função} poisexpt (@var{a}, @var{b})
396 Funcionalmente identica a @code{intopois (@var{a}^@var{b})}.
397 @var{b} deve ser um inteiro positico.
401 @c WHAT IS THIS ABOUT ??
402 @deffn {Função} poisint (@var{a}, @var{b})
403 Integra em um senso restrito similarmente (para
404 @code{poisdiff}). Termos não periódicos em @var{b} são diminuídos se @var{b} estiver em argumentos
409 @defvr {Variável de opção} poislim
412 @code{poislim} determina o domínio dos coeficientes nos
413 argumentos de funções trigonométricas. O valor inicial de 5
414 corresponde ao intervalo [-2^(5-1)+1,2^(5-1)], ou [-15,16], mas isso
415 pode ser alterado para [-2^(n-1)+1, 2^(n-1)].
419 @c UMM, WHAT IS THIS ABOUT EXACTLY ?? EXAMPLES NEEDED
420 @deffn {Função} poismap (@var{series}, @var{sinfn}, @var{cosfn})
421 mapeará as funções @var{sinfn} sobre os
422 termos de seno e @var{cosfn} ssobre os termos de cosseno das séries de Poisson dadas.
423 @var{sinfn} e @var{cosfn} são funções de dois argumentos que são um coeficiente
424 e uma parte trigonométrica de um termo em séries respectivamente.
428 @c REPHRASE WITHOUT USING THE TERM "FUNCTIONALLY IDENTICAL"
429 @deffn {Função} poisplus (@var{a}, @var{b})
430 É funcionalmente identica a @code{intopois (a + b)}.
434 @deffn {Função} poissimp (@var{a})
435 Converte @var{a} em séries de Poisson para @var{a} em representação
440 @c MORE INFO NEEDED HERE
441 @defvr {Símbolo especial} poisson
442 O símbolo @code{/P/} segue o rótulo de linha de uma expressão contendo séries de
447 @deffn {Função} poissubst (@var{a}, @var{b}, @var{c})
448 Substitue @var{a} por @var{b} em @var{c}. @var{c} é uma série de Poisson.
450 (1) Quando @var{B} é uma variável @var{u}, @var{v}, @var{w}, @var{x}, @var{y}, ou @var{z},
451 então @var{a} deve ser uma
452 expressão linear nessas variáveis (e.g., @code{6*u + 4*v}).
454 (2) Quando @var{b} for outra que não essas variáveis, então @var{a} deve também ser
455 livre dessas variáveis, e alé disso, livre de senos ou cossenos.
457 @code{poissubst (@var{a}, @var{b}, @var{c}, @var{d}, @var{n})} é um tipo especial d substituição que
458 opera sobre @var{a} e @var{b} como no tipo (1) acima, mas onde @var{d} é uma série de
459 Poisson, expande @code{cos(@var{d})} e @code{sin(@var{d})} para a ordem @var{n} como provendo o
460 resultado da substituição @code{@var{a} + @var{d}} por @var{b} em @var{c}. A idéia é que @var{d} é uma
461 expansão em termos de um pequeno parâmetro. Por exemplo,
462 @code{poissubst (u, v, cos(v), %e, 3)} retorna @code{cos(u)*(1 - %e^2/2) - sin(u)*(%e - %e^3/6)}.
466 @c REPHRASE WITHOUT USING THE TERM "FUNCTIONALLY IDENTICAL"
467 @deffn {Função} poistimes (@var{a}, @var{b})
468 É funcionalmente idêntica a @code{intopois (@var{a}*@var{b})}.
472 @c HOW DOES THIS WORK ?? NEED MORE INFO AND EXAMPLES
473 @deffn {Função} poistrim ()
474 é um nome de função reservado que (se o usuário tiver definido
475 uma função com esse nome) é aplicada durante multiplicação de Poisson. Isso é uma função
476 predicada de 6 argumentos que são os coeficientes de @var{u}, @var{v}, ..., @var{z}
477 em um termo. Termos para os quais @code{poistrim} for @code{true} (para os coeficientes
478 daquele termo) são eliminados durante a multiplicação.
482 @deffn {Função} printpois (@var{a})
483 Mostra uma série de Poisson em um formato legível. Em comum
484 com @code{outofpois}, essa função converterá @var{a} em um código de Poisson primeiro, se
489 @c NEED INFO HERE ABOUT THE SUBSCRIPTED FORM psi[n](x)
490 @c I (rtoy) don't think there is a plain psi(x) function anymore.
491 @c @deffn {Função} psi (@var{x})
492 @c @deffnx {Função} psi [@var{n}](@var{x})
493 @deffn {Função} psi [@var{n}](@var{x})
495 A derivada de @code{log (gamma (@var{x}))} de ordem @code{@var{n}+1}.
496 Dessa forma, @code{psi[0](@var{x})} é a primeira derivada,
497 @code{psi[1](@var{x})} é a segunda derivada, etc.
499 Maxima não sabe como, em geral, calcular um valor numérico de
500 @code{psi}, mas Maxima pode calcular alguns valores exatos para argumentos racionais.
501 Muitas variáveis controlam qual intervalo de argumentos racionais @code{psi} irá
502 retornar um valor exato, se possível. Veja @code{maxpsiposint},
503 @code{maxpsinegint}, @code{maxpsifracnum}, e @code{maxpsifracdenom}.
504 Isto é, @var{x} deve localizar-se entre @code{maxpsinegint} e
505 @code{maxpsiposint}. Se o valor absoluto da parte facionária de
506 @var{x} for racional e tiver um numerador menor que @code{maxpsifracnum}
507 e tiver um denominador menor que @code{maxpsifracdenom}, @code{psi}
508 irá retornar um valor exato.
510 A função @code{bfpsi} no pacote @code{bffac} pode calcular
515 @defvr {Variável de opção} maxpsiposint
518 @code{maxpsiposint} é o maior valor positivo para o qual
519 @code{psi[n](x)} irá tentar calcular um valor exato.
523 @defvr {Variável de opção} maxpsinegint
526 @code{maxpsinegint} é o valor mais negativo para o qual
527 @code{psi[n](x)} irá tentar calcular um valor exato. Isto é, se
528 @var{x} for menor que @code{maxnegint}, @code{psi[n](@var{x})} não irá
529 retornar resposta simplificada, mesmo se isso for possível.
533 @defvr {Variável de opção} maxpsifracnum
536 Tomemos @var{x} como sendo um número racional menor que a unidade e da forma @code{p/q}.
537 Se @code{p} for menor que @code{maxpsifracnum}, então
538 @code{psi[@var{n}](@var{x})} não irá tentar retornar um valor
543 @defvr {Variável de opção} maxpsifracdenom
546 Tomemos @var{x} como sendo um número racional menor que a unidade e da forma @code{p/q}.
547 Se @code{q} for maior que @code{maxpsifracdenom}, então
548 @code{psi[@var{n}](@var{x})} não irá tentar retornar um valor
553 @deffn {Function} specint (exp(- s*@var{t}) * @var{expr}, @var{t})
555 Calcula a trasformada de Laplace de @var{expr} com relação à variável @var{t}.
556 O integrando @var{expr} pode conter funções especiais.
558 Se @code{specint} não puder calcular a integral, o valor de retorno pode
559 coter vários símbolos do Lisp, incluindo
560 @code{other-defint-to-follow-negtest},
561 @code{other-lt-exponential-to-follow},
562 @code{product-of-y-with-nofract-indices}, etc.; isso é um erro.
563 @c REPORTED AS SOURCEFORGE BUG # 1162505
565 @code{demo(hypgeo)} mostra muitos exemplos de tansformadas de Laplace calculados por meio de @code{specint}.
569 @c assume (p > 0, a > 0);
570 @c specint (t^(1/2) * exp(-a*t/4) * exp(-p*t), t);
571 @c specint (t^(1/2) * bessel_j(1, 2 * a^(1/2) * t^(1/2)) * exp(-p*t), t);
575 (%i1) assume (p > 0, a > 0);
577 (%i2) specint (t^(1/2) * exp(-a*t/4) * exp(-p*t), t);
583 (%i3) specint (t^(1/2) * bessel_j(1, 2 * a^(1/2) * t^(1/2)) * exp(-p*t), t);
586 (%o3) ---------------