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 " print "Sobral - Ceará - Brasil " print "Aperte enter para continuar!" pause -2 system "clear" print "Este programa traça uma poligonal sobre uma superfície do tipo z=F(x,y) para" print "ilustrar como podemos descrever um caminho sobre uma superfície. Estou usando " print "uma poligonal por razões de aproximação: não seria possível construir um caminho" print "muito regular sobre uma superfície no espaço, e além disto esta idéia não seria " print "prática." print "As razões que podem nos levar à construção de um caminho no espaço associado " print "a uma determinada superfície estão ligadas a um campo vetorial sob o qual este-" print "jamos condicionados, por exemplo as forças produzidas pela movimentação de massas" print "de ar na atmosfera e a necessidade de deslocamento de um avião entre dois pontos." print "O avião vai viajar num caminho sobre uma superfície que teoricamente seria aquela" print "em que passa o \"corredor\" definido pelo sistema que gerencia o espaço aéreo," print "devidamente deformado pela energia das massas de ar. O resultado é uma poligonal" print "obtida pelas correções do piloto automático. Este é o objetivo deste programa," print "a simulação de uma tal poligonal, abstraindo a dinâmica atmosférica com uma" print "função definida algebricamente que pode ser substituida por uma massa de dados" print "que informem o programa sobre as condições desta dinâmica num momento particular." print "Esta parte final não será incorporada a este programa neste momento." print "Aperte enter para continuar!" pause -2 system "clear" G(x,y) = sin((2*x + 3*y)/10.0); ## z = G(x,y) DG_x(x,y) = 0.2*cos((2*x + 3*y)/10.0); DG_y(x,y) = 0.3*cos((2*x + 3*y)/10.0); a=-1.5;b=2.5; ## A(x-a) + B(y-b) + C(z-c ) = 0 - equação de um plano ## z = P(x,y); z - G(a,b) - DG_x(a,b)*(x-a) - DG_y(a,b)*(y-b) = 0 ## vetor perpendicular A = - DG_x(a,b); B = - DG_y(a,b); C = 1 A = - DG_x(a,b); B = - DG_y(a,b); C = 1 A1 = -A; B1 = -B; C1 = -C; ## deslocamento do vetor perpendicular para a posição ## (A,B,C) + (a,b,G(a,b)) = (A+a, B+b, C+G(a,b)) ## (A1, B1,C1) + (a,b,G(a,b)); (a + A1, b + B1, G(a,b) + C1) ## ative os três comandandos seguintes para ver que o vetor é perpendicular set xrange [-4:5] ## para ativar, apague o sinal de comentário, ## set xrange [-4:4] ## no início da linha, mas não estes internos set zrange [-10:10] ## que você deve deixar. set arrow from 0,0,0 to a,b,G(a,b); set arrow from a,b,G(a,b) to A+a, B+b, C+G(a,b) set arrow from a,b,G(a,b) to a+3*A1, b+3*B1, G(a,b)+3*C1; P(x,y) = G(a,b) + DG_x(a,b)*(x-a) + DG_y(a,b)*(y-b); splot G(x,y),P(x,y); print "Aperte enter para continuar!" pause -2 print "O vetor pependicular ao plano no ponto (", a, ",", b, ",", G(a,b),") é"; print "(", A, ",", B, ",", 1,")"; print "Aperte enter para continuar!" pause -2