system "clear" print " " print " " print "============================================================" print " Os direitos do autor e a GPL " print "============================================================" print " " print "Este programa é distribuido sob GPL. " print "Se você não souber o que é a GPL, envie um e-mail ao autor " print " tarcisio@member.ams.org " print "mas em suma quer dizer que você pode usar livremente o sistema" print "de programas aqui mencionados, desde que esta informação seja mantida" print "em todas as alterações que você fizer dos programas e das cópias que " print "você deles fizer - é a proteção do direito autoral que não lhe impede" print "de usar livremente o conhecimento mas que mantém na memória quem " print "participou de sua produção." print "Este programa foi escrito por Tarcisio Praciano-Pereira " print "professor da Universidade Estadual Vale do Acaraú - UeVA " print "Laboratório de Matemática Computacional - Departamento de Computação" print "Sobral - Ceará - Brasil " print "Aperte enter para continuar!" pause -2 system "clear" print "Este programa faz interpolação linear usando uma técnica que será usada" print "na construções de splines polinomiais. Para isto o programa define uma" print "núcleo triangular, é uma função a suporte compacto, quer dizer, ela se" print "anula fora de um intervalo fechado limitado da reta. Como gnuplot facilmente" print "nos permite fazer operações algébricas com funções, podemos somar ou " print "translatar funções, estou aqui usando translações deste núcleo triangular" print "e um combinação linear destas translações para obter uma interpolação" print "linear. Na verdade aqui o objetivo não é a interpolação linear em si, mas" print "ilustrar a construção de uma função linear por pedaços, 0-splines, usando" print "estas técnicas. " print " " print "Este um passo no caminho da construção de 3-splines." print " " print "Aperte enter para continuar!" pause -2 system "clear" print "O programa contém comentários nos pontos certos para que você o altere e assim" print "use o programa como laboratório na construção de outros exemplos. Não se " print "esqueça de que sempre pode obter nova cópia do programa, isto deve deixá-lo" print "livre para fazer experimentos sem receios de perder ou estragar o programa." print "Experimente a vontade. Este assunto e coberto no capítulo 4 do meu livro" print "Cálculo Numérico Computacional e você pode obter aqui uma cópia do" print "livro" print "" print "http://www.calculo-numerico.sobralmatematica.org/textos/" print " " print "Aperte enter para continuar!" pause -2 system "clear" print "" print "\n \n \n\n" print "Ao rodar o programa, em Linux vai funcionar, n\'outro sistema não posso" print "garantir, deixe o curso no terminal onde você chamou o programa e afaste o" print "terminal gráfico do gnuplot. Assim você poderá seguir lendo as mensagens" print "do programa ao mesmo que vai fazendo o programa rodar dando enter no" print "terminal." print "Aperte enter para continuar!" pause -2 system "clear" print "" print "A definição de um núcleo triangular, uma função a suporte compacto, neste" print "caso é um 0-splines." print "Aperte enter para continuar!" pause -2 system "clear" ## núcleo triângular com suporte em [-1,1] f(x) = (x<=-1)?0:(x<=0)?x+1:(x<=1)?1-x:0 print "mostra o gráfico do núcleo triangular." print "Aperte enter para continuar!" pause -2 system "clear" ## mostra o gráfico do núcleo triangular. set yrange [-3:3] set xrange [-3:3] plot 0, f(x) pause -2" print "" print "Construção das translatadas do núcleo triangular" print "Aperte enter para continuar!" pause -2 system "clear" ## translatadas do núcleo triangular f0(x) = f(x+5) f1(x) = f(x+4) f2(x) = f(x+3) f3(x) = f(x+2) f4(x) = f(x+1) f6(x) = f(x-1) f7(x) = f(x-2) f8(x) = f(x-3) f9(x) = f(x-4) f10(x) = f(x-5) print "uma poligonal - combinação linear de núcleo transtados" print "Aperte enter para continuar!" pause -2 system "clear" ## uma poligonal - combinação linear de núcleo transtados plot 0, 5*f0(x)+3*f1(x)+4*f2(x)+3*f3(x)+ f4(x)+0*f(x)-f6(x)+0*f7(x)+3*f8(x)+4*f9(x)+7*f10(x) pause -2 print " translatadas e dilatadas (translação e dilação) " print "Aperte enter para continuar!" pause -2 system "clear" ## translatadas e dilatadas (translação e dilação) h1(x) = f(3*(x+3.666)) h2(x) = f(3*(x+3.333)) h3(x) = f(3*(x+3)) h4(x) = f(2*(x+2.5)) h5(x) = f(2*(x+2)) h6(x) = f(x+1) print "A soma das translatadas e dilatadas do núcleo triangular - um 0-splines" print "Aperte enter para continuar!" pause -2 system "clear" h(x) = 6*h1(x) + 7*h2(x) + 4*h3(x) + h4(x)+ h5(x) + 3*h6(x) ## arquivo exer08.01.dados contém os pontos de precisão - dados colhidos set yrange [-10:10] set xrange [-4:2] set title "interpolando (-3.666...,6), (-3.333...,7), (-3,4),(-2.5,1), (-2,1), (1,3) " plot 0, h(x), "exer08.01.dados" print "Aperte enter para terminar!" pause -2 system "clear"