3c9373012110ab324cc9519e4a6ffc3a15b7f663
[scilab.git] / scilab / modules / special_functions / help / pt_BR / bessel.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4  * Copyright (C) 2008 - INRIA
5  *
6  * Copyright (C) 2012 - 2016 - Scilab Enterprises
7  *
8  * This file is hereby licensed under the terms of the GNU GPL v2.0,
9  * pursuant to article 5.3.4 of the CeCILL v.2.1.
10  * This file was originally licensed under the terms of the CeCILL v2.1,
11  * and continues to be available under such terms.
12  * For more information, see the COPYING file which you should have received
13  * along with this program.
14  *
15  -->
16 <refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns4="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="bessel" xml:lang="pt">
17     <refnamediv xml:id="besseli">
18         <refname>besseli</refname>
19         <refpurpose>funções modificadas de Bessel do primeiro tipo (I sub
20             alfa).
21         </refpurpose>
22     </refnamediv>
23     <refnamediv xml:id="besselj">
24         <refname>besselj</refname>
25         <refpurpose>funções de Bessel do primeiro tipo (J sub alpha).</refpurpose>
26     </refnamediv>
27     <refnamediv xml:id="besselk">
28         <refname>besselk</refname>
29         <refpurpose>funções modificadas de Bessel do segundo tipo (K sub
30             alpha).
31         </refpurpose>
32     </refnamediv>
33     <refnamediv xml:id="bessely">
34         <refname>bessely</refname>
35         <refpurpose>funções de Bessel do segundo tipo (Y sub alpha).</refpurpose>
36     </refnamediv>
37     <refnamediv xml:id="besselh">
38         <refname>besselh</refname>
39         <refpurpose>funções de Bessel do terceiro tipo (também conhecidas como
40             funções de Hankel)
41         </refpurpose>
42     </refnamediv>
43     <refsynopsisdiv>
44         <title>Seqüência de Chamamento</title>
45         <synopsis>y = besseli(alpha,x [,ice])
46             y = besselj(alpha,x [,ice])
47             y = besselk(alpha,x [,ice])
48             y = bessely(alpha,x [,ice])
49             y = besselh(alpha,x)
50             y = besselh(alpha,K,x [,ice])
51         </synopsis>
52     </refsynopsisdiv>
53     <refsection>
54         <title>Parâmetros</title>
55         <variablelist>
56             <varlistentry>
57                 <term>x</term>
58                 <listitem>
59                     <para>vetor de reais ou complexos</para>
60                 </listitem>
61             </varlistentry>
62             <varlistentry>
63                 <term>alpha</term>
64                 <listitem>
65                     <para>vetor de reais </para>
66                 </listitem>
67             </varlistentry>
68             <varlistentry>
69                 <term>ice</term>
70                 <listitem>
71                     <para>flag (sinalizador) inteiro, com valor padrão 0 </para>
72                 </listitem>
73             </varlistentry>
74             <varlistentry>
75                 <term>K</term>
76                 <listitem>
77                     <para>inteiro, com valores possíveis 1 ou 2, a função do tipo de
78                         Hankel.
79                     </para>
80                 </listitem>
81             </varlistentry>
82         </variablelist>
83     </refsection>
84     <refsection>
85         <title>Descrição</title>
86         <itemizedlist>
87             <listitem>
88                 <para>
89                     <literal>besseli(alpha,x)</literal> computa as funções de Bessel
90                     modificadas do primeiro tipo (I sub alfa), para ordem real
91                     <literal>alpha</literal> e argumento <literal>x</literal>.
92                     <literal>besseli(alpha,x,1)</literal> computa
93                     <literal>besseli(alpha,x).*exp(-abs(real(x)))</literal>.
94                 </para>
95             </listitem>
96             <listitem>
97                 <para>
98                     <literal>besselj(alpha,x)</literal> computa as funções de Bessel
99                     do primeiro tipo (J sub alfa), para ordem real
100                     <literal>alpha</literal> e argumento <literal>x</literal>.
101                     <literal>besselj(alpha,x,1)</literal> computa
102                     <literal>besselj(alpha,x).*exp(-abs(imag(x)))</literal>.
103                 </para>
104             </listitem>
105             <listitem>
106                 <para>
107                     <literal>besselk(alpha,x)</literal> computa as funções de Bessel
108                     modificadas do segundo tipo (K sub alfa), para ordem real
109                     <literal>alpha</literal> e argumento <literal>x</literal>.
110                     <literal>besselk(alpha,x,1)</literal> computa
111                     <literal>besselk(alpha,x).*exp(x)</literal>.
112                 </para>
113             </listitem>
114             <listitem>
115                 <para>
116                     <literal>bessely(alpha,x)</literal> computa as funções de Bessel
117                     do segundo tipo (Y sub alfa), para ordem real <literal>alpha</literal>
118                     e argumento <literal>x</literal>.
119                     <literal>bessely(alpha,x,1)</literal> computa
120                     <literal>bessely(alpha,x).*exp(-abs(imag(x)))</literal>.
121                 </para>
122             </listitem>
123             <listitem>
124                 <para>
125                     <literal>besselh(alpha [,K] ,x)</literal> computa as funções de
126                     Bessel do terceiro tipo (função de Hankel H1 ou H2, dependendo do
127                     <literal>K</literal>), para ordem real <literal>alpha</literal> e
128                     argumentot <literal>x</literal>. Se omitido, <literal>K</literal> é
129                     suposto como sendo 1. <literal>besselh(alpha,1,x,1)</literal> computa
130                     <literal>besselh(alpha,1,x).*exp(-%i*x)</literal> e
131                     <literal>besselh(alpha,2,x,1)</literal> computa
132                     <literal>besselh(alpha,2,x).*exp(%i*x)</literal>
133                 </para>
134             </listitem>
135         </itemizedlist>
136     </refsection>
137     <refsection>
138         <title>Observações </title>
139         <para>
140             Se <literal>alpha</literal> e <literal>x</literal> são arrays de
141             mesmo tamanho, o resultado <literal>y</literal> também terá este tamanho.
142             Se uma entrada é um escalar, ela é expandida para o tamanho da outra
143             entrada. Se uma entrada é um vetor linha e a outra é um vetor coluna, o
144             resultado <literal>y</literal> é um table 2-dimensional ("tabela") de
145             valores de funções.
146         </para>
147         <para>As funções de Bessel Y_alfa e J_alfa são duas soluções independentes
148             da equação diferencial de Bessel:
149         </para>
150         <programlisting role=""><![CDATA[
151 2 2 2 x y" + x y' + (x - alfa ) y = 0 , alfa >= 0
152  ]]></programlisting>
153         <para>As funções modificadas de Bessel K_alfa e I_alfa são duas soluções
154             independentes para a equação diferencial de Bessel :
155         </para>
156         <programlisting role=""><![CDATA[
157 2 2 2 x y" + x y' - (x + alfa ) y = 0 , alfa >= 0
158  ]]></programlisting>
159         <para>As funções de Hankel de primeiro e segundo tipos H^1_alfa e
160             H^2_alfa, são combinações lineares das funções de Bessel de primeiro e
161             segundo tipos:
162         </para>
163         <programlisting role=""><![CDATA[
164 H^1_alfa(z) = J_alfa(z) + i Y_alfa(z) H^2_alfa(z) = J_alfa(z) - i Y_alfa(z)
165  ]]></programlisting>
166     </refsection>
167     <refsection>
168         <title>Exemplos</title>
169         <programlisting role="example"><![CDATA[
170 //  Funções I de Bessel
171 // ==================
172 x = linspace(0.01,10,5000)';
173 clf()
174 subplot(2,1,1)
175 plot2d(x,besseli(0:4,x), style=2:6)
176 legend('I'+string(0:4),2);
177 xtitle("Algumas funções modificadas de Bessel do primeiro tipo")
178 subplot(2,1,2)
179 plot2d(x,besseli(0:4,x,1), style=2:6)
180 legend('I'+string(0:4),1);
181 xtitle("Algumas funções modificadas de Bessel do primeiro tipo escaladas")
182
183 // Funções J de Bessel
184 // =================
185 x = linspace(0,40,5000)';
186 clf()
187 plot2d(x,besselj(0:4,x), style=2:6, leg="J0@J1@J2@J3@J4")
188 legend('I'+string(0:4),1);
189 xtitle("Algumas funções de Bessel do primeiro tipo")
190
191 // Usando o fato de que J_(1/2)(x) = sqrt(2/(x pi)) sin(x)
192 // Para comparar o algoritmo de besselj(0.5,x) com uma fórmula mais direta
193 x = linspace(0.1,40,5000)';
194 y1 = besselj(0.5, x);
195 y2 = sqrt(2 ./(%pi*x)).*sin(x);
196 er = abs((y1-y2)./y2);
197 ind = find(er > 0 & y2 ~= 0);
198 clf()
199 subplot(2,1,1)
200 plot2d(x,y1,style=2)
201 xtitle("besselj(0.5,x)")
202 subplot(2,1,2)
203 plot2d(x(ind), er(ind), style=2, logflag="nl")
204 xtitle("Erro relativo entre as duas fórmulas para besselj(0.5,x)")
205
206 // Funções K de Bessel
207 // =================
208 x = linspace(0.01,10,5000)';
209 clf()
210 subplot(2,1,1)
211 plot2d(x,besselk(0:4,x), style=0:4, rect=[0,0,6,10])
212 legend('K'+string(0:4),1);
213 xtitle("Algumas funções modificadas de Bessel do segundo tipo")
214 subplot(2,1,2)
215 plot2d(x,besselk(0:4,x,1), style=0:4, rect=[0,0,6,10])
216 legend('K'+string(0:4),1);
217 xtitle("Algumas funções modificadas de Bessel do segundo tipo escaladas")
218
219 // Funções Y de Bessel
220 // =================
221 x = linspace(0.1,40,5000)'; // funções Y de Bessel não possuem limite para x -> 0+
222 clf()
223 plot2d(x,bessely(0:4,x), style=0:4, rect=[0,-1.5,40,0.6])
224 legend('Y'+string(0:4),4);
225 xtitle("Algumas funções de Bessel do segundo tipo")
226
227 // Funções H de Bessel
228 // =================
229 x=-4:0.025:2; y=-1.5:0.025:1.5;
230 [X,Y] = ndgrid(x,y);
231 H = besselh(0,1,X+%i*Y);
232 clf();f=gcf();
233 xset("fpf"," ")
234 f.color_map=jetcolormap(16);
235 contour2d(x,y,abs(H),0.2:0.2:3.2,strf="034",rect=[-4,-1.5,3,1.5])
236 legends(string(0.2:0.2:3.2),1:16,"ur")
237 xtitle("Curvas de nível de |H1(0,z)|")
238  ]]></programlisting>
239     </refsection>
240     <refsection>
241         <title>Autores</title>
242         <simplelist type="vert">
243             <member>Amos, D. E., (SNLA)</member>
244             <member>Daniel, S. L., (SNLA)</member>
245             <member>Weston, M. K., (SNLA)</member>
246         </simplelist>
247     </refsection>
248     <refsection>
249         <title>Função Usada</title>
250         <para>Os códigos-fontes podem ser achados em SCI/modules/special_functions/src/fortran/slatec e SCI/modules/special_functions/src/fortran</para>
251         <para>Slatec : dbesi.f, zbesi.f, dbesj.f, zbesj.f, dbesk.f, zbesk.f,
252             dbesy.f, zbesy.f, zbesh.f
253         </para>
254         <para>Drivers para estender a área de definição (Serge Steer INRIA):
255             dbesig.f, zbesig.f, dbesjg.f, zbesjg.f, dbeskg.f, zbeskg.f, dbesyg.f,
256             zbesyg.f, zbeshg.f
257         </para>
258     </refsection>
259 </refentry>