15
_________________________________________________________________________________ PRIMEIROS PASSOS COM O MÁXIMA Luís Cláudio Lopes de Araújo FAET - UniCEUB 2 o . semestre letivo de 2006

Introducao Maxima c Graficos

Embed Size (px)

DESCRIPTION

Programa de ensino em Matemática

Citation preview

_________________________________________________________________________________ PRIMEIROS PASSOS COM O MXIMA Lus Cludio Lopes de Arajo FAET - UniCEUB 2o. semestre letivo de 2006 _________________________________________________________________________________ O AMBIENTE DO MXIMA O software objeto de estudo possui a seguinte tela. A parte de baixo (que ver quando abriroprograma)umnavegadordeInternetqueentendeoMXIMA.Comelepossvel navegar nas pginas htmls que j esto em seu computador aps a instalao e tambm em pginasdaInternetescritascominstruesparaoMXIMA.Estafuncionalidadepoderser objeto de discusso para futuro. A parte superior da tela como a que pode ver acima. No canto esquerdo ver que o prompt do programa algo do tipo (%i1), (%i2) ... (%iN) onde N um nmero natural. O ideverserlembradocomoinput,termodalnguainglesausadoparadesignaralgocomo entrada. Note que a resposta dada em linhas com nomes da seguinte forma:(%o1), (%o2) ... (%oN) e o o deve ser lembrado como output, termo que lembrar sada. Estes nomes so variveistambmqueestocomassadasdecadacomando.Avantagemdestemodo voc poder fazer referncia a um resultado que foi obtido h algum tempo. s fazer meno sada. Comoexemplo,suponhaqueeuqueiraderivarumaexpressoqueestnasada (%o15). Para tal bastaria escrever diff(%o15,x); e o MXIMA ir derivar a expresso na sada (%o15)emrelaoax.Falaremosdocomandodederivaomaistarde.Gostariaque olhassenovamenteparaaimagemacima.Notecomoestescritoasfraeseexpoentes. Est usando os caracteres comuns, correto? Isto o que chamado de exibio em ASCII e uma desvantagem do MXIMA, pois dependendo do tamanho da expresso ou do que est trabalhando, esta forma de escrever se torna ruim. Um exemplo disto pode servisto se tentar resolver a equao diferencial _________________________________________________________________________________ sin3dy xxydx x Ocomandoestabaixoearespostatambm.Agoranotecomoestescritoaintegraleos outros elementos. Aresposta,usandorecursosmaissofisticadosdoqueASCIIdeverservistoda seguinte forma: 223322sinxxe xye dxCx UmdosaspectosdainterfacegrficachamadawxMXIMAseramelhorasignificativano documento sada do MXIMA, j que l voc ver a sada como a igualdade acima. NUNCA SE ESQUEA que no MXIMA, obrigatoriamente todo comando deve terminar com;(ponto-e-vrgula).Sevocesquecerdisto,elenoserexecutado.Senoquiserqueo resultado seja exibido, termine o comando com $ (cifro). _________________________________________________________________________________ O AMBIENTE DO wxMXIMA A interfacewxMXIMAveio para facilitaro usodo MXIMA. A tela doprograma como est aparecendo abaixo. Da forma que est ela possui 12 botes de atalho em baixo, mas esta quantidade pode ser aumentada se voc for em EDIT CONFIGURE em BUTTON PANEL selecione FULL. Depois feche o programa e abra-o novamente . _________________________________________________________________________________ Note que agora ao invs de 12 h 20 botes de atalho. O programa foi feito em C++ e possui o cdigo fonte aberto e por esse motivo estaremos trabalhando nele como o objetivo de melhoraralgunsaspectos.Umdelesatraduodoprogramaqueaindanopossuiverso em portugus (e isto muito simples de se fazertendo o cdigo fonte)e outras modificaes sero no sentido de aumentar o nmero de funes existentes no programa hoje. Um exemplo simples de funo que dever ser adicionada ser uma interface grfica que permita manipular oMXIMAparatrabalharcommatrizessemelhanteaoqueocorrecomoWINMAT(veja imagem abaixo). Srecentementeencontramosafunoquefazasoperaeselementarescom matrizeseestasfunesnoestonomanualderefernciaquetemos(somaisde500 pginas) e no est no wxMXIMA tambm. OPERADORES ARITMTICOS Os operadores aritmticos so os usados normalmente. OperadorAoExemploResultado +Adiciona2+35 -Subtrai2/3-5/7-1/21 *Multiplica3/5*7/37/5 /Divide10/265/13 ^Potncia2^101024 sqrt(.)Calcula a raiz de .Sqrt(1024)32 Notequeporsetratardeoperadoressimples,estamosaproveitandoparamostrar alguns fatos interessantes como: _________________________________________________________________________________ 1.Operar com fraes na forma de frao (sem passar forma decimal) 2.Simplificar fraes quando esta no est na forma irredutvel. NUNCA SE ESQUEA que no MXIMA (e em qualquer outro programa de nvel internacional), os nmeros decimais no so escritos com o uso de vrgula como aprendemos na escola e sim com ponto. Por exemplo: 3,75 para ns 3.75 no MXIMA, MuPAD, MAPLE etc. Efetue as seguintes operaes: a) 5 8 3 b) 3,2 6,32 c) 3(85) 6(14) d) 2, 654, 5 CONSTANTES ESPECIAIS Htrsconstantesespeciaisquesolistadosnatabelaabaixoesuarespectiva representao dentro do MXIMA. Constante (smbolo)NomeRepresentao no MXIMA e Nmero de Euler%e Pi%pi Infinitoinf Bom,podemos discutir se infinito ou no constante mas isto no vem ao caso aqui. Colocamos ele na lista dos smbolos com representao especial, s isto. ;-) RESULTADOS EXATOS E APROXIMADOS O MXIMA possui por padro um nmero de casas decimais igual a 16. Este nmero podesermodificadomudandoovalordavarivelfpprec.Falaremossobreistodepois.Um nmero real como e,,2 , ln(3) e outras podem ser aproximados por nmeros decimais ( o que se chama dentro do MXIMA de ponto flutuante). O comando para isto bem simples: float(); Vejamos alguns exemplos: _________________________________________________________________________________ NmeroComandoRetorno e float(%e);2.7182818284590451 float(%pi);3.1415926535897931 2float(sqrt(2));1.4142135623730951 ln(3) float(log(3));1.0986122886681098 USANDO RESULTADOS ANTERIORES AvarivelqueguardaSEMPREaltimasadaa%.Destemodo,casoeuqueira fazer referncia ao ltimo resultado exibido na tela, basta fazer referncia ao resultado usando a varivel %. Por exemplo Notequeovalordavarivel%31/4queadicionadocom5/4d36/4=9.Isto funciona para o que aparecer(funo, matriz,expresses, equaesetc).Sempre quequiser fazer algo com a ltima sada, tem a opo de usar a varivel %. DEFININDO VARIVEIS O operador usado para definir variveis o : (dois pontos). A lgica a seguinte ComandoO que ele faz? x:a;Atribui o valor a varivel x kill(x);Apaga o valor atribudo varivel x. Veja o exemplo: (%i1) x:7;(%o2) 7(%i4) x; (%o1) 7(%i3) kill(x);(%o4) x (%i2) x;(%o3) done _________________________________________________________________________________ Voc pode atribuir o que quiser eno apenas nmero. Vamos a um exemplo. OPERAES SIMBLICAS UmadasmaisimportantescaractersticasdoaplicativoMXIMAqueeleefetua operaes simblicas, isto efetua operaes algbricas tais como fatorar polinmios, calcular razesdeumaequaopolinomial,resolversistemasdeequaes,manipularesimplificarexpressesalgbricas,etc.Podemosusarosoperadoresaritmticosparaefetuara simplificao de uma expresso algbrica. COMO EXPANDIR, FATORAR E SIMPLIFICAR COM O MXIMA Os comandos mais simples so os que esto na tabela abaixo. ComandoO que faz?Exemplo entradaRetorno expandExpanso simples factorFatora (polinmios) ratsimpSimplifica expresses polinomiais Oscomandosacimafuncionambemparaospolinmioseasfunesracionais,mas voc no conseguir trabalhar bem com simplificao, por exemplo, para uma classe maior de funes.Vejacomoexemplooproblemadesimplificarumaexpressoenvolvendoradicais _________________________________________________________________________________ como a expresso 93xx. Vamos comear tentando usandoratsimp e depois um comando apropriado. Observecomoelenoresolveuoproblemadefatorar.Simplesmentereescreveua expresso. Agora vamos ver com um outro comando, prprio para trabalhar com radicais. Agora, levando em conta o radical, a expresso foi fatorada. Para saber mais sobre as diversas formas de simplificao (inclusive a trigonomtrica) digite COMO USAR A AJUDA DO MXIMA? Desde que voc tenha um fragmento da palavra que deseja pesquisar, basta escrever ?palavra;Observequedepoisde?devehaverum espaoeSEMPREterminarcom;.No wxMXIMA ele se encarrega de colocar o ; para voc. Alguns exemplos de ajuda que voc pode pedir O programa ir listar o que ele encontrou e pedir a voc sobre o que quer ajuda como o que est abaixo. Vocdeveentrarcomumoumaisnmeros(separadosporespao)correspondentesaos assuntos que quer ajuda. Se quiser para todos, digite all ou se no retornou nada digite none. _________________________________________________________________________________ ATRIBUINDO VALORES (NUMRICO OU NO) A VARIVEISOcomandoquefazestaatribuioosubst(,,);.Estecomandofazo seguinte:substituiporem .Porexemplo,suponhamosquenaexpresso2 33 7 a ab bqueiramossubstituirovalordeapor7.Ocomandoearespostaficariaassim: queiramos substituir o valor de a por 7. O comando e a resposta ficaria assim: Vocpodelero comando acima da seguinte forma:atribuiro valor7 varivel ana expresso a^2+3*a*b-7*b^3. Este comando pode ser acessado no wxMXIMA usando o boto Substitute. A janela que aparecer ser a seguinte: A lgica assim: substituir a varivel a por 7 na expresso a^2+3*a*b-7*b^3. Naturalmente que esta substituio pode ser por outras expresses e no somente por nmeros.Podemos,porexemplo,naexpresso 21 xsubstituirxporcos(t).Usandoo wxMXIMA teramos _________________________________________________________________________________ O comando que ser exibido e consequentemente o resultado ser o seguinte: EXPANSO EM FRAES PARCIAISOcomandoqueexpandeumaexpressoracionalemfraesparciaisoseguinte: partfrac (, ); Vamos a um exemplo simples: expandir em fraes parciais 1( 3) x x. O comando e o resultado esto abaixo: FUNES NO MXIMAAs funes predefinidas no MXIMA esto na tabela abaixo. SintaxeFuno abs(x) | | x exp(x) xelog(x) ln( ) x sign(x) | |xx sqrt(x) xsin(x)sen(x) cos(x)cos(x) tan(x)tg(x) sec(x)sec(x) csc(x)cosec(x) _________________________________________________________________________________ cot(x)cotg(x) acos(x)arccos(x) asin(x)arcsen(x) atan(x)arctan(x) asec(x)arcsec(x) acsc(x)arccosec(x) acot(x)arccotg(x) sinh(x)senh(x) cosh(x)cosh(x) tanh(x)tgh(x) sech(x)sech(x) csch(x)csch(x) coth(x)cotgh(x) asinh(x)arcsenh(x) acosh(x)arcosh(x) atanh(x)arctanh(x) asech(x)arcsech(x) acsc(x)arccosech(x) acoth(x)arccotgh(x) DEFININDO FUNES NO MXIMAA forma de definio de funo no MXIMA uma das mais simples que existe. Para criar uma funo, por exemplo, f(x) voc apenas tem que digitar f(x):= expresso; Vamos a um exemplo. Definir a funo 2( ) cos f x x x e encontrar (1), (0)e ( ) ff f. Para nmeros reais no inteiros, encontrar o nmero na forma decimal. Veja como ficaria na forma decimal. Veja como ficaria _________________________________________________________________________________ DERIVANDO COM O MXIMAOcomandoquepermiteaderivaonoMXIMAbemcomumeusadoemvrios programas. Sua sintaxe a seguinte: diff( ,); Se quiser uma derivada deordemsuperiordeverdigitar:diff(,,);Vamosaalguns exemplos. O programa explicita as derivadas no caso de no conhecer a expresso. Veja. ou ainda INTEGRANDO COM O MXIMAO comando que encontra a integral indefinida o seguinte: _________________________________________________________________________________ integrate(,); Destamaneirapodemosintegrar,funesdigitandoocomandoouusandoorecursodo wxMXIMAondevoctemsquepreenchercampos.SeclicaremINTEGRATEaparecer uma janela para voc preencher como a que segue abaixo. Aqui estamos pedindo para resolver a integral .cos( ) x xdx. Note que h uma caixaparavocmarcarcasoqueiraumaintegraldefinidaaoinvsdeuma integralindefinida.Nestecasosavisarondecomeaeondeterminaseu intervalo de integrao. Para a integral citada o resultado ser este: No caso da primitiva no ser elementar ou se o programa no encontrar uma forma de resolver a integral ele apenas a reescreve como abaixo Comocomentadoanteriormente,pararesolverumaintegraldefinida, basta marcar a caixa na janela e avisar onde inicia e onde termina o intervalo deintegrao.Suponhamosquequeiraencontrarovalordaintegral 71.cos( ) x xdx.VocpodeusarasfacilidadesdowxMXIMAparaescrevero _________________________________________________________________________________ comando,clicandonobotoINTEGRATE...epreenchendoajanelacomo segue. O comando para integral definida possui a seguinte estrutura: integrate(, , , ); Para a integral acima a sada seria a seguinte: (este documento ser ainda atualizado) Lus Cludio L. Arajo Lus Andr B. Morales