Pythonlänkar i GeoGebra

https://geogebra.org/python så kan du skriva Pythonprogram som använder sig av GeoGebrakommandon för att visa grafiska element som punkter, cirklar och linjer etc. I och med att Python har ”äkta” loopar och villkor så blir det lätt att skapa mer komplicerade konstruktioner.

Här är ett exempel med interferensmönster. Själva programmet kan sedan sparas men även skickas som en länk där hela programmet är inkodat i länken. Så här ser länken ut i det här fallet.

https://geogebra.org/python/index.html?name=Interference+patterns&code=eJyFUbtuwyAU3fmKI3mxLQ%2B2t1bqlKlSh%2B6RBwI3DpLBEeCkn98Lkd1HFAWxHJ3HPRcKvLtI%2FkienCKcZWTkhDj62cLKeIKx59lH1BCiMM5EIydc5LRQENrjDT3yKRCkJciAq7zQRG6MpwZ2CREHguEhI3lh5Vf2tNnBCF5qs4R7pWbZyy2aldqEKFPBA8UrkctDEObFK%2B7BzbCjtEcQqmPj58wxZdu0lVD9hnXCLP3gMKGMVxOFpN63A6%2BXq9XgnVYuOf9x%2FDCzh%2BOWXNyNVHbcnMmGuepVAGvs3g3s3mVUKlZpX7vqR9D%2FFfSr4Fl%2Bou1jGrfvDKRiuVWxQ%2FNratOlGtv9BoM8mg8%3D.

Kör du programmet får du ett enkelt exempel på interferensmönster. Från ganska enkla program kan du på det här sättet skapa relativt komplicerade konstruktioner.

I koden skriver du GeoGebrakommandon med stor begynnelsebokstav. Du behöver skriva på engelska.

# Interference pattern

#initial values
dr = 2      # same as wavelength, must be integer
maxr = 20   # max radius, must be integer
d = 9       # distance between wave sources

# Centers
c1 = Point(0,0)
c2 = Point(d,0)

# List
circles1 = [0] * maxr * dr 
circles2 = [0] * maxr * dr

for n in range(1, maxr, dr):
  circles1[n] = Circle(c1, dr*n)
  circles2[n] = Circle(c2, dr*n)

for n in range(1, maxr, dr):
  for m in range(1, maxr, dr):
    Intersect(circles1[m],circles2[n],1)
  

Du har väl sett att det finns massor av exempelkod att använda för matematikundervisningen? Kika på https://geogebra.se/pyma/. Exempelfilerna ligger på https://replit.com/@pyma/0#main.py.

Och du har väl inte glömt att anmäla dig till konferensen?

Lämna en kommentar