Sovellus: Sinin, kosinin ja tangentin määrittäminen yksikköympyrästä

264 days ago by Lauri_Ruotsalainen

Sovellus: Sinin, kosinin ja tangentin määrittäminen yksikköympyrästä

Lauri Ruotsalainen, 2011

Ohjelma näyttää kaksi kuvaa, joista vasemmanpuoleinen esittää yksikköympyrää ja oikeanpuoleisessa on koordinaatisto, johon trigonometrisen funktion kuvaaja piirretään. Ohjelma on interaktiivinen: säätimellä valitaan radiaaniluku, jonka funktio saa argumenttinaan. Tutkittava funktio valitaan pudotusvalikosta.

Ohjelma näyttää kulmaa vastaavan pisteen yksikköympyrän kehällä ja havainnollistaa eri väristen viivojen avulla, miten esimerkiksi sinifunktio määritellään pisteen y-koordinaattina. Funktion kuvaajaan on piirretty vastaavat viivat samoilla väreillä kuin yksikköympyrässä. Tämä havainnollistaa hyvin trigonometristen funktioiden määrittelyn luonnetta yksikköympyrän ja funktion kuvaajan välillä.

Kuvia:



t = var('t') @interact def yksikkoympyra(funktio=selector([(0, sin(x)), (1, cos(x)), (2, tan(x))]), x=slider(0, 2*pi, 0.005*pi, 0)): xy = (cos(x), sin(x)) # Yksikköympyrään liittyvä grafiikka ympyra = circle((0,0), 1, figsize=[5,5], aspect_ratio=1) ympyra_viiva = line([(0,0), (xy[0],xy[1])], rgbcolor="black") ympyra_piste = point((xy[0],xy[1]), pointsize=40, rgbcolor="green") ympyra_kulma_keha = parametric_plot((cos(t),sin(t)), (t, 0, x+0.001), color="green", thickness=2) ympyra_kulma_keskus = parametric_plot((0.1*cos(t), 0.1*sin(t)), (t, 0, x+0.001), color="black") # Kuvaajaan liittyvä grafiikka kuvaaja_viiva = line([(0,0), (x,0)], rgbcolor="green", thickness=2) kuvaaja_piste = point((x,0), pointsize=30, rgbcolor="green") # Sini if funktio == 0: ympyra_funktio_piste = point((0,xy[1]), pointsize=40, rgbcolor="red") ympyra_funktio_viiva_akseli = line([(0,0), (0,xy[1])], rgbcolor="red", thickness=2) ympyra_funktio_viiva_keha = line([(0,xy[1]), (xy[0],xy[1])], rgbcolor="purple", linestyle='--') kuvaaja_funktio = plot(sin(t), t, 0, 2*pi, axes_labels=("x", "sin(x)")) kuvaaja_funktio_piste = point((x, sin(x)), pointsize=30, rgbcolor="red") kuvaaja_funktio_viiva = line([(x,0), (x,sin(x))], rgbcolor="red") # Kosini elif(funktio==1): ympyra_funktio_piste = point((xy[0],0), pointsize=40, rgbcolor="red") ympyra_funktio_viiva_akseli = line([(0,0), (xy[0],0)], rgbcolor="red", thickness=2) ympyra_funktio_viiva_keha = line([(xy[0],0), (xy[0],xy[1])], rgbcolor="purple", linestyle='--') kuvaaja_funktio = plot(cos(t), t, 0, 2*pi, axes_labels=("x", "cos(x)")) kuvaaja_funktio_piste = point((x,cos(x)), pointsize=30, rgbcolor="red") kuvaaja_funktio_viiva = line([(x,0), (x,cos(x))], rgbcolor="red") # Tangentti else: ympyra_funktio_piste = point((1,tan(x)), pointsize=40, rgbcolor="red") ympyra_funktio_viiva_akseli = line([(1,0), (1,tan(x))], rgbcolor="red", thickness=2) ympyra_funktio_viiva_keha = line([(xy[0],xy[1]), (1,tan(x))], rgbcolor="purple", linestyle='--') kuvaaja_funktio = plot(tan(t), t, 0, 2*pi, ymin=-8, ymax=8, axes_labels=("x", "tan(x)")) kuvaaja_funktio_piste = point((x,tan(x)), pointsize=30, rgbcolor="red") kuvaaja_funktio_viiva = line([(x,0), (x,tan(x))], rgbcolor="red") # Yksikköympyrään liittyvän grafiikan yhdistäminen yhdeksi kuvaksi. yksikkoympyra = ympyra + ympyra_piste + ympyra_viiva + ympyra_kulma_keha + ympyra_kulma_keskus + ympyra_funktio_piste + ympyra_funktio_viiva_akseli + ympyra_funktio_viiva_keha # Funktion kuvaajaan liittyvän grafiikan yhdistäminen. kuvaaja = kuvaaja_viiva + kuvaaja_piste + kuvaaja_funktio + kuvaaja_funktio_piste + kuvaaja_funktio_viiva # Esitetään yksikköympyrä ja kuvaaja rinnakkain. html.table([["$\\text{Yksikköympyrä}$","$\\text{Kuvaaja}"], [yksikkoympyra, kuvaaja]], header=True) 
       

Click to the left again to hide and once more to show the dynamic interactive window