Wstęp

Przymierze zawarte przed wiekami między matematykami i fizykami (nazywanymi wtedy "filozofami przyrody") we współczesnym świecie nie tylko oparło się próbie czasu, ale było jedną z przyczyn rozwoju nowoczesnej matematyki. Powyższe spostrzeżenie nie zawsze jest odbierane przez uczniów jako oczywiste. Tymczasem jednym z podstawowych celów dydaktyki matematyki jest podejmowanie takich prób, by program nauczania sprzyjał wzrostowi zainteresowania tym przedmiotem. Można to osiągnąć, między innymi, właśnie przez wskazanie zastosowań w różnych dziedzinach. Spotęgowanie natomiast zainteresowania "królową nauk" można uzyskać przez wprowadzenie atrakcyjnych dla ucznia środków dydaktycznych [1]. Dzisiaj niewątpliwie takim środkiem jest komputer.

Tytuł pracy brzmi może nieco prowokująco, ale jest to po prostu  propozycja komputerowej zabawy dydaktycznej, mogącą być - użytkownik zechce to ocenić - okazją do powtórzenia i utrwalenia wiadomości z trygonometrii... i nie tylko.

Rozpatrzmy następującą klasę funkcji dwóch zmiennych1):

obrazek

(m,n) N, (x,y)   R2,   a R,   d - bok płyty.

Bez zmiany opisu zjawiska możemy położyć d  = p, wówczas:

 f(x,y) = sin(mx)sin(ny)cosa + sin(nx)sin(my)sina .

 (1.1)

Interesujące jest poszukiwanie takich punktów płaszczyzny, dla których:

 f(x,y) = 0.

 (1.2)

Powyższy zapis możemy traktować jako funkcję uwikłaną (umownie) zmiennej x. Można również pokusić się o przestrzenne przedstawienie funkcji (1.1) i zbadanie jej przecięć z płaszczyzną xy.

 z = f(x,y) = 0.

(1.3)

Przypatrzmy się najpierw funkcjom (1.2), (1.3) w sposób numeryczny: listing 1.

SCREEN 9
 10 INPUT m,n,a
 20 ca = COS(a): sa = SIN(a)
 30 REM KROK RACHUNKÓW
 40 S1=.01: S2=.01
 50 REM PRZEGLĄDANIE FUNKCJI W OBSZARZE ZMIENNOŚCI
 60 REM
 70 FOR i = 0 TO PI STEP S1: FOR j = 0 TO PI STEP S2
 80 f = SIN(m*i)*SIN(n*j)*ca + SIN(n*i)*SIN(m*j)*sa
 90 x = 100 + 100*i: y = 300 - 80*j
100 REM
110 IF ABS(f) < .02 THEN PSET (x,y),3
120 NEXT j: NEXT i

Program jest napisany w języku QBASIC. Numeracja linii jest zbędna, ale zamieszczamy ją ze względów porządkowych (komentarz listingu). Rozpoczynamy od instrukcji wyboru trybu graficznego ekranu. Program przegląda obszar zmienności funkcji (1.2) przy pomocy dwóch pętli (70-120): zewnętrznej (wyższego poziomu) i wewnętrznej (niższego poziomu). Instrukcje wprowadzania danych znajdują się w linii 10. Linia 20 służy do optymalizacji programu. Funkcja (1.2) jest definiowana w linii 80, a poniżej (90) wprowadzane są współrzędne ekranowe. Niektóre linie są na razie puste; program będzie uzupełniany.

Oto kilka przykładów figur tworzonych przy pomocy przedstawionego programu. Pod rysunkami zaznaczono stosunek częstotliwości m :n, w takim porządku jak w linii 10, a po średniku podano a - fazę (parametr funkcji) drgań. Przechodzimy stopniowo od prostych figur do figur o charakterze ornamentalnym (Rys. 1a-i). Pewne rozmycie linii funkcyjnych jak również brzegów figur jest wywołane tym, że linia 110 realizuje jedynie w przybliżeniu warunek (1.2).

Przystępujemy teraz do modyfikacji naszego programu, który pozwoli tworzyć wykresy przestrzenne funkcji (1.3). Głównym problemem przy tworzeniu takich wykresów jest eliminacji zasłanianych linii. Wymaga to deklarowania tablic przesłaniania oraz ciągłego ich uaktualniania.

Pojawia się też dużo instrukcji skoku warunkowego, co wpływa na szybkość wykonywania programu. Należy również definiować rozmiary grafiki, kroku rachunków itd. Często nie wiemy jak zachowa się funkcja; musimy przewidzieć konieczność "obcinania" płachty funkcyjnej i "zasypywania" dołów. Bez przerwy musi być kontrolowany dolny i górny horyzont linii funkcyjnych [3].

W przypadku funkcji (1.3) jesteśmy w znacznie lepszej sytuacji, ponieważ: -2 < f(x,y) < 2.

Rys. 1

a)

obrazek
1 : 2; 0

b)

obrazek
2 : 1; p/3

c)

obrazek
1 : 3; p/16

d)

obrazek
2 : 3; p/2

e)

obrazek
3 : 4; p/4

f)

obrazek
5 : 2; -p/8

g)

obrazek
6 : 1; p/4

h)

obrazek
7 : 3; p/4

i)

obrazek
8 : 3; p/4

a na brzegach obszaru zmienności nie czekają na nas żadne niespodzianki; bowiem dla:

x = 0 È  x =   p   È  y =   0   È  y =   p È  f(x,y) = 0.

Powyższe założenia pozwalają znacznie uprościć algorytm. Zmienne funkcyjne x, y, które przejmują rolę współrzędnych ekranowych są jednocześnie krokami rachunków i  oraz j, czyli krokami pętli. Linie horyzontalne funkcji są równoległe do osi Oi.  Ponieważ linie te są stale podnoszone go góry (polecenie 90), to odpowiadające im wartości funkcji powodują podniesienie do góry współrzędnych ekranowych i nie występuje efekt nachodzenia linii na siebie. Decyduje o tym współczynnik przed wartością f w drugiej sekwencji linii 90. Inaczej mówiąc, mnożnik przed zmienną f  nie może być większy od współczynnika skrócenia (lub wydłużenia) perspektywy2).

 .....
 40 S1=.02: S2=.2
 .....
 60 ZMIANA:
 90 x = 100 + 100*i + 60*j: y = 300 - 60*j - 20*f
100 PSET (x,y)
 .....
130 REM RYSOWANIE LINII WGŁĘBNYCH 
140 S1 = S1*10: S2 = S2/10: GOTO ZMIANA

Program pozwala kreślić wykresy przestrzenne funkcji (1.3), (Rys. 2a-i).


1) Funkcje tego typu pojawiają się w pewnych zagadnieniach z akustyki, np. drgania sprężystej płyty kwadratowej (membrany) i są matematyczną reprezentacją tzw. figur Chladniego [p. dodatek]. Stałe m, n nazywamy częstościami drgań własnych [2].

2)Ten bardzo uproszczony program jest graficznie przejrzysty tylko dla niewielkich wartości parametrów m, n  (kilka). Autor jest w posiadaniu programu napisanego w języku TURBO PASCAL, który rysuje czytelne wykresy dla dowolnych m, n. Niestety jest on długi (około 170) linii i nie nadaje się tutaj do cytowania. Przedstawiony program należy traktować jako jego namiastkę.


   I Liceum Ogólnokształcące   
im. Kazimierza Brodzińskiego
w Tarnowie

©2024 mgr Jerzy Wałaszek

Dokument ten rozpowszechniany jest zgodnie z zasadami licencji
GNU Free Documentation License.

Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl

W artykułach serwisu są używane cookies. Jeśli nie chcesz ich otrzymywać,
zablokuj je w swojej przeglądarce.
Informacje dodatkowe