Potencjalne zastosowania SageMath

Zastosowania SageMath w matematyce

Matematyka uczy logicznego myślenia, wnioskowania i umiejętności precyzyjnego wysławiania się. Rozwijając swoje umiejętności matematyczne uczeń osiąga stawiane przed nim cele edukacyjne, przez co rozwija się również intelektualnie. Osiągnięcie przez ucznia założonych celów jest możliwe dzięki zastosowaniu na lekcjach matematyki takich metod nauczania i sposobów przekazywania wiedzy, które w jak największym stopniu uatrakcyjniają przedmiot oraz motywują uczniów do samodzielnego rozwiązywania problemów matematycznych.

W literaturze dydaktycznej został opisany szereg metod pracy z uczniem. W dzisiejszych czasach, kiedy praktycznie wszyscy uczniowie mają dostęp do komputera, tabletu lub smartfona, szczególnego znaczenia nabierają metody aktywizujące, które zakładają wykorzystanie tych urządzeń w procesie edukacyjnym.

Metodą znajdującą coraz szersze zastosowanie jest praca z komputerem, czyli odpowiednie zastosowanie technologii informacyjnej w celu zwiększenia efektów nauczania matematyki. Istnieje wiele pakietów matematycznych, które nauczyciel może wykorzystać podczas lekcji. Jednym z nich jest platforma SageMath - bezpłatny (open-source) system oprogramowania matematycznego oparty na języku programowania Python, wspomagający nauczanie matematyki. SageMath można zastosować we wszystkich działach programu nauczania matematyki w szkole średniej na poziomie podstawowym i rozszerzonym.

Zastosowanie SageMath w poszczególnych działach programu nauczania matematyki w szkole średniej przedstawimy na przykładzie programu autorstwa Marcina Kurczaba, Elżbiety Kurczab i Elżbiety Świdy „Matematyka. Program nauczania. Zakres rozszerzony.”

Tabela 1 Zakres potencjalnego zastosowania SageMath: matematyka klasa 1 liceum.
Logika. Zbiory. Zbiory liczbowe Przy pomocy pakietu SageMath uczeń może poznać i utrwalić podstawowe prawa logiki, takie jak negacja alternatywy i negacja koniunkcji, ocenić wartość logiczną zdań złożonych oraz zastosować poznane prawa logiczne (patrz np.: Działania na wyrażeniach logicznych. Uczeń może również nauczyć się wyznaczać część wspólną, sumę i różnicę zbiorów oraz dopełnienie zbioru patrz np. zadanie O graficznym i algebraicznym rozwiązywaniu nierówności czy Nierówności - graficznie!
Działania w zbiorach liczbowych Ponieważ SageMath może służyć jako kalkulator, uczeń wykorzystując ten pakiet może eksperymentować w większościa zagadnień. Wiele przykładów podano w rozdziale Bogaty i szybki kalkulator naukowy.
Wyrażenia algebraiczne

Ponieważ w SageMath można wykonywać obliczenia symboliczne, uczeń wykorzystując ten pakiet może osiągnąć wszystkie cele edukacyjne w tym dziale. Przykładami mogą być rozdział Działania na wyrażeniach algebraicznych. oraz zadania:

Geometria płaska:

  • pojęcia wstępne
  • trójkąty
  • pole koła, pole trójkąta.

Przy pomocy środowiska SageMath uczeń może wizualizować obiekty geometryczne, badać ich wzajemne zależności oraz może rozwiązywać zadania dotyczące własności figur geometrycznych wykorzystując poznane w tym dziale twierdzenia. Przykładem mogą być zadania

Wykorzystując środowisko SageMath uczeń może utrwalić swoje umiejętności m. in. w zakresie korzystania z przybliżonych wartości funkcji trygonometrycznych, rozwiązywania zadań geometrycznych z wykorzystaniem funkcji trygonometrycznych kąta ostrego w trójkącie prostokątnym oraz zastosowania twierdzenia sinusów i twierdzenia cosinusów.

Trygonometria

SageMath jest niezwykle przydatny w zarówno obliczaniu wartości arytmetycznych funkcji trygonometrycznych jak i upraszczniu tożsamości, patrze np.: Działania na wyrażeniach algebraicznych.. Należy zwrócić uwagę na szczególną przydatność Sage w rysowaniu wykresów, zwracają uwagę na typowe problemy związane z rozbieżnościami - patrz:

Funkcja i jej własności

Przy pomocy środowiska SageMath uczeń może osiągnąć wszystkie cele edukacyjne i zdobyć wszystkie umiejętności zakładane w tych działach. Typowymi cechami SageMath są rysowanie wykresów funkcji, obliczanie pochodnych i badanie przebiegu funkcji. Przykładami mogą być:

Przekształcanie wykresów funkcji W sytemie algebry komputerowej jest bardzo łatwo napisać plot(f(-x),(x,0,1)) i zastąpić znak minus np. pomnożeniem przez liczbę czy dodać wartość bezwzględną. Takie operacje są przydatne w budowaniu intuicji np. czy odejmując jeden od argumentu wykres przesunie się w lewo czy w prawo?
Tabela 2 Zakres potencjalnego zastosowania SageMath: matematyka klasa 3 liceum.
Klasa 3
Funkcja wykładnicza i funkcja logarytmiczna Uczeń wykorzystując środowisko SageMath może rozwiązywać zadania opisujące zjawiska fizyczne, chemiczne i biologiczne oraz modelować zagadnienia z kontekstem rzeczywistym posługując się funkcjami wykładniczymi i funkcjami logarytmicznymi. Przykładem może być zadanie - O logarytmach i upraszczaniu
Geometria analityczna

Z pomocą SageMath można wykonać precyzyjne rysunki, animacje i interakcje obejmujące zagadnienia omawiane w tym dziale. Przykłady:

Kombinatoryka i rachunek prawdopodobieństwa Wykorzystując środowisko SageMath można skonstruować symulacje procesów losowych i przyprowadzić eksperymenty numeryczne. Przykładem mogą być materiały ze strony http://visual.icse.us.edu.pl/szkola: Podejmowanie decyzji w grupie oraz Paradoks Monty-Halla. Histogram został również wykorzystany w scenariuszu Fale dźwiękowe.
Elementy statystyki opisowej System SageMath posiada wiele funkcji pozwalający na obliczanie statystycznych wielkości np. wartości średnie czy histogram.
Geometria przestrzenna Wykorzystując możliwości graficzne pakietu SageMath uczeń może ułatwić sobie rozwiązywanie zadań z geometrii przestrzennej poprzez wizualizację obiektów geometrycznych opisywanych w tych zadaniach.
Elementy analizy matematycznej Wszystkie zagadnienia omawiane w tym dziale uczeń może opanować i utrwalić wykorzystując możliwości jakie daje środowisko SageMath oraz język programowania Python.

Na szczególną uwagę zasługuje zastosowanie SageMath do: badania własności funkcji, rozwiązywania równań, nierówności i układów równań i nierówności, prostego modelowania matematycznego, badania własności figur płaskich („odkrywanie” twierdzeń), rozwiązywania zadań z geometrii przestrzennej, wykorzystania rachunku pochodnych do analizy zjawisk opisanych wzorami różnych funkcji (w tym rozwiązywania zadań optymalizacyjnych).

Zastosowanie SageMath w procesie nauczania matematyki może odbywać się na kilka sposobów:

  1. Podczas zajęć w szkole
  2. Prezentacja - za pomocą komputera i rzutnika multimedialnego nauczyciel prezentuje uczniom przygotowany wcześniej statyczny pokaz,
  3. Prezentacja interaktywna - nauczyciel prezentuje uczniom dynamiczny pokaz (wykorzystując elementy interaktywne przygotowane przez siebie lub znalezione w Internecie),
  4. Prezentacja interaktywna z udziałem uczniów - nauczyciel prezentuje dynamiczny pokaz, w którym niektóre czynności wykonują wybrani uczniowie,
  5. Zajęcia w pracowni komputerowej - uczniowie pracują indywidualnie przy komputerach lub, w przypadku niewystarczającej liczby dostępnych komputerów, są podzieleni na niewielkie grupy.
  1. Podczas pracy własnej ucznia w domu
  2. Uczeń logując się do serwera SageMath pracuje z notatnikiem przygotowanym i udostępnionym mu przez nauczyciela, zawierającym teoretyczne opracowanie zagadnienie, które uczeń jest zobowiązany opanować (statycznie),
  3. Uczeń po zalogowaniu się do serwera SageMath uzyskuje dostęp do notatnika, w którym - aby opanować określone zagadnienie - musi zapoznać się z teorią na ten temat, przeanalizować rozwiązane przykłady oraz modyfikować je w celu rozwiązania zadanych przez nauczyciela zadań.

Z wyborem metod nauczania ściśle wiąże się odpowiedni dobór form organizacji procesu edukacyjnego:

  1. Praca w grupach - w oczywisty sposób przebiegająca głównie podczas lekcji w szkole, polegająca na podziale klasy na kilkuosobowe zespoły i przydzieleniu im problemu do rozwiązania.
  2. Praca indywidualna - każdy uczeń pracuje samodzielnie, pod kierunkiem nauczyciela podczas lekcji lub samodzielnie w domu. Korzyści są następujące:
  3. Uczeń może we właściwym dla siebie tempie samodzielnie uzyskać odpowiedzi na postawione pytania poprzez analizę problemu i potencjalnych metod jego rozwiązania,
  4. Uczeń może w większym stopniu utrwalić zdobytą wiedzę,
  5. Uczeń nabywa i utrwala umiejętność samodzielnego zdobywania wiedzy.

Praca indywidualna wyrabia też nawyk sumiennego wykonania powierzonego zadania, odpowiedzialności za siebie, za swoją wiedzę i umiejętności.

Zastosowania SageMath w fizyce

Fizyka w szkołach realizujących polską podstawę programową

Polska podstawa programowa do fizyki nie zawiera w ogóle słowa “komputer”. Nie formułuje ona żadnych bezpośrednich sugestii stosowania TI w procesie nauczania tego przedmiotu. Nie oznacza to jednak, że stosowanie komputerów w dydaktyce fizyki jest zabronione.

Spójrzmy na wymagania przekrojowe dla zakresu rozszerzonego w IV etapie edukacyjnym (LO), zawarte w części 12. podstawy programowej:

Oprócz wiedzy z wybranych działów fizyki, uczeń:

1) przedstawia jednostki wielkości fizycznych wymienionych w podstawie programowej, opisuje ich związki z jednostkami podstawowymi;

2) samodzielnie wykonuje poprawne wykresy (właściwe oznaczenie i opis osi, wybór skali, oznaczenie niepewności punktów pomiarowych);

3)  przeprowadza złożone obliczenia liczbowe, posługując się kalkulatorem;

4) interpoluje, ocenia orientacyjnie wartość pośrednią (interpolowaną) między danymi w tabeli, także za pomocą wykresu;

5) dopasowuje prostą y = ax + b do wykresu i ocenia trafność tego postępowania; oblicza wartości współczynników a i b (ocena ich niepewności nie jest wymagana);

6) opisuje podstawowe zasady niepewności pomiaru (szacowanie niepewności pomiaru, obliczanie niepewności względnej, wskazywanie wielkości, której pomiar ma decydujący wkład na niepewność otrzymanego wyniku wyznaczanej wielkości fizycznej);

7) szacuje wartość spodziewanego wyniku obliczeń, krytycznie analizuje realność otrzymanego wyniku;

8) przedstawia własnymi słowami główne tezy poznanego artykułu popularnonaukowego z dziedziny fizyki lub astronomii.

Poza punktem pierwszym i ostatnim, wymagania te idealnie wpisują się w możliwości oferowane przez środowisko SageMath. Python w środowisku SageMath oferuje wspaniałe możliwości graficzne. Format dowolnych elementów wykresów może być programowo zmieniany w szerokim zakresie. Same dane do wykresów mogą pochodzić ze skomplikowanych obliczeń na dużych zbiorach danych, do przeprowadzania których Python nadaje się bez porównania lepiej niż sugerowany przez podstawę programową kalkulator prosty. Przykładowo, użycie pętli do obliczeń zwalnia ucznia z mozolnych, nudnych i mało twórczych, wielokrotnie powtarzanych czynności. Zaoszczędzony czas uczeń może poświęcić na myślenie koncepcyjne, twórczą zabawę z parametrami i obserwację skutków tej zabawy.

Jedną z najczęściej wykorzystywanych na lekcjach fizyki opcji Pythona jest dopasowywanie nie tylko prostej, ale też dowolnej krzywej do punktów pomiarowych. Podstawa programowa zakłada, że uczeń powinien umieć “na oko” tak przyłożyć linijkę do wykresu, aby jak najlepiej wpasować się w widoczny na wykresie trend, po czym narysować prostą i z rysunku określić jej parametry liczbowe. Bezpośrednie stosowanie metody najmniejszych kwadratów w celu obliczenia współczynników prostej daleko wykracza poza wymagania programowe (nie wspominając już o odniesieniu jej do krzywych). Tymczasem w Pythonie wystarczą dwie proste linijki kodu, aby dopasować do danych dowolną krzywą. Uczeń wcale nie musi rozumieć, jak program to robi - dostaje skuteczne narzędzie do precyzyjnego wyliczenia wszystkich potrzebnych współczynników.

Kolejną często wykorzystywaną opcją jest szacowanie błędów pomiarowych. Uczniowie wprawdzie znają pojęcie odchylenia standardowego i procedurę jego obliczania, niemniej jest to żmudne i mało twórcze. Python pozwala rozwiązywać takie problemy jedną komendą.

Największe pole do nieskrępowanej twórczości naukowej Python daje chyba w dziedzinie symulowania i animowania zjawisk fizycznych. Pewne efekty z pogranicza matematyki i fizyki są bez komputera zupełnie nie do ogarnięcia. Na przykład licealiście trudno “na słowo” uwierzyć, że suma dwóch sinusów o mało różniących się okresach daje w efekcie dudnienia. W SageMath możemy to łatwo pokazać, umożliwiając dodatkowo łatwą interaktywną zmianę amplitud, częstotliwości i przesunięć fazowych za pomocą suwaków. Podobnie łatwo możemy pokazać, czym jest transformata Fouriera. Zabawa suwakami czy kodem źródłowym pozwala uczniom łatwo przyswoić sobie sens pojęć, których wytłumaczenie za pomocą czystego wykładu z matematyki byłoby kompletnie niemożliwe, nieskuteczne i bezcelowe. Python umożliwia o wiele szersze stosowanie matematyki w fizyce i bezpośrednie oglądanie efektów swojej pracy na żywo.

Fizyka w szkołach realizujących Program Dyplomowy Matury Międzynarodowej

Fizyka nauczana w klasach realizujących Program Dyplomowy Matury Międzynarodowej jest dziedzina nauki, w której zastosowanie technik komputerowych jest bezwzględnie wymagane przez komórkę nadzorującą realizację programu i zostało wskazane przez International Baccalaureate Organization do dokumentu odpowiadającego Polskiej Podstawie Programowej, zwanego International Baccalaureate Physics Higher and Standard Level Core.

Komputer, jako narzędzie pracy stanowi niezbędne narzędzie pracy fizyków i jest bezpośrednio stosowany przez uczniów na zajęciach teoretycznych jak i laboratoryjnych. Dzięki metodom informacyjnym możliwy jest dokładny pomiar wielkości fizycznych, ich zapis „on line” a co za tym idzie, natychmiastowa analiza wyników. Uzyskane wyniki mogą być łatwo prezentowane w formie graficznej stanowiącej postać wykresów, które mogą być wykonywane przy użyciu oprogramowania Sage. Zaletą tego języka jest możliwość łatwej zmiany skali lub układu osi w celu przejrzystego prezentowania badanej zależności. Obecnie wzrasta ranga środowiska Sage, szczególnie wśród nauczycieli fizyki w klasach realizujących Program Dyplomowy Matury Międzynarodowej. Wynika to bezpośrednio z faktu, iż możliwości wykorzystania notebooka na lekcjach fizyki są większe i bardziej atrakcyjne niż na innych przedmiotach wchodzących w skład dekagonu International Baccalaureate Dipploma Programme.

Do najbardziej rozpowszechnionych funkcji SageMath w nauczaniu fizyki należą: obliczenia i analiza wyników eksperymentalnych modelowanie pomiaru w doświadczeniach fizycznych, symulacja eksperymentów i procesów fizycznych, a  rzadziej animacja lub modelowanie graficzne. W celu wykorzystania komputera jako przyrządu fizycznego opracowano wiele wersji oprzyrządowania informatycznego i fizyczne komputera oraz programy, które pozwalają wielokanałowo wykorzystywać komputer jako przyrząd. Może on pełnić rolę oscyloskopu z pamięcią, który jest bardzo skomplikowany, a koszty jego zakupu mogą stanowić nie lada wyzwanie dla budżetu szkoły. Może on pełnić rolę dokładnego stopera, termometru, dowolnego miernika elektrycznego,  światłomierza, miernika kąta, symulatora rozpadu promieniotwórczego a nawet wiernie odtwarzać pracę elektrowni jądrowej. Jednak wszystkie tego typu aplikacje nie umożliwiają uczniowi samodzielnej konstrukcji a co za tym idzie zrozumienia metodologii rozwiązywania omawianych procesów i zjawisk fizycznych.

Dalszą aplikacją wykorzystania SageMath na lekcjach fizyki jest automatyczne prowadzenie pomiarów ”on line” w czasie doświadczeń za pomocą przetworników analogowo - cyfrowych i opracowywanie danych w środowisku SageMath na bieżąco, zarówno przez uczniów jak i nauczyciela. Przykładem tego typu zastosowania jest wykonanie doświadczenia ujętego podstawą programową (Core) polegającego na badaniu słuszności prawa stygnięcia. Trudna interpretacja matematyczna polegająca na wprowadzeniu równań różniczkowych nie objętych programem podstawy matematyki zostaje zamieniona przez grupę badawczą na przykład w interpretację numeryczną, łatwą do wykonania w Sage. Z drugiej strony środowisko to umożliwia szybkie rozwiązanie równania różniczkowego, bez nadmiernej analizy teoretycznych aspektów samego rozwiązania. Środowisko SageMath pozwala również na szybką obróbkę wielkości mierzonych w układzie doświadczalnym i przejrzystą prezentację obliczonych wielkości pochodnych w postaci tabel, grafów lub wykresów. Zwalnia to uczniów od żmudnej i kłopotliwej pracy obliczeniowej, nieistotnej dla zrozumienia problemu, pozwala natomiast skoncentrować uwagę na fizycznej treści analizowanych zjawisk. Wyniki otrzymane w kilku seriach pomiarowych można opracować w sposób statystyczny, co pozwala ocenić na ile określona metoda i przyrządy są dokładne.  Najbardziej okazałym przykładem zalecanym podczas realizacji nauczania fizyki w Programie Dyplomowym Matury Międzynarodowej może być zestaw ćwiczeń z mechaniki podczas którego uczniowie sporządzają wykresy ruchów, rozwiązują kinematyczne równanie ruchu, czy też wyznaczają maksymalną wysokość na którą może wznieść się ciało. W tym przypadku szybkość prowadzenia obliczeń jest dość istotna, gdyż przeważnie dotychczas na lekcjach ograniczonych czasem na wykonanie kilku serii pomiarowych i dokonanie obliczeń, nie wspominając już o analizie i wyciągnięciu wniosków z doświadczenia często rezygnowano z możliwości programowania bezpośrednio przez ucznia ścieżki rozwiązania. Szybkość obliczeniową SageMath można wykorzystać do rozwiązywania problemów bardzo skomplikowanych np. ruch wirującego bąka czy też bardziej skomplikowanych obliczeń  z zakresu fizykochemii ciała stałego, stanowiących część podstawy programowej w klasach z Programem Dyplomowym Matury Międzynarodowej. Wykonując doświadczenia przy pomocy SageMath uczniowie mogą sami ocenić, że stosunkowo szybko i sprawnie przeprowadzić nawet bardzo skomplikowane obliczenia.

Nadrzędnym celem modelowania procesów fizycznych jest wyrobienie poglądu na ich strukturę wewnętrzną (powiązania pomiędzy poszczególnymi elementami), poznanie praw rządzących ich przebiegiem, wyjaśnienie przyczyn występowania zjawisk towarzyszących określonemu procesowi, a także możliwość przewidywania odpowiedzi procesu na dowolne warunki. Osobnym zagadnieniem jest pojęcie modelu wymaganego w procesach poznawczych według zaleceń International Baccalaureate Organization, przez który rozumieć należy materialnie zrealizować układ, który, odzwierciedlając lub odtwarzając przedmiot badania, zdolny jest zastępować go tak, że jego badanie dostarcza nam nowej informacji o tym przedmiocie. Modele matematyczne procesów fizycznych konstruuje się na podstawie ogólnych zasad i praw fizyki poznawanych w cyklu nauczania. Przyjmuje się przy tym pewne założenia upraszczające strukturę wewnętrzną modelowanych procesów oraz ich powiązania z otoczeniem. Skonstruowany model może dostarczyć określonej wiedzy o modelowanym procesie, jeżeli jest modelem zasadnym dla danego procesu, to znaczy, jeśli odwzorowuje on przebieg procesu z zadowalającą dokładnością. Dysponując modelem zasadnym dla danego procesu fizycznego oraz wartościami wszystkich jego parametrów, można na tej podstawie przewidywać odpowiedz procesu na dowolne wymuszenie. Możliwość ta ma istotne znaczenie dla symulacji przebiegu procesów fizycznych. W nauczaniu fizyki w szkole korzysta się z gotowych, zasadnych modeli matematycznych dla analizowanych w czasie lekcji procesów fizycznych. Problemem, który pozwala zniwelować użycie SageMath jest poziom abstrakcji matematycznej, często niezrozumiały przez większość uczniów, na przykład zagadnienie warunków brzegowych, czy ograniczeń wynikających z zasięgu oddziaływań. Dostępne są więc wszystkie informacje, niezbędne do symulowania z wykorzystaniem komputera, przebiegu analizowanych procesów fizycznych.

Możliwość modelowania zjawisk fizycznych za SageMath, analizującego dane zjawisko metodą numeryczną ”krok po, kroku” należy do najcenniejszych z dydaktycznego punktu widzenia. W przeciwieństwie do opisu analitycznego model numeryczny kieruje uwagę bardziej na sposób rozwiązania problemu niż na formę rozwiązania. To pozwala łatwiej dostrzec związek między różnymi fenomenologicznie zjawiskami fizycznymi, ale opisywanymi przez podobne modele np. w takich zjawiskach jak: wymuszone drgania ciężarka na sprężynie, rozładowanie kondensatora, Modelowanie ukazuje związki pomiędzy procesem, a jego modelem matematycznym, natomiast symulacja dotyczy związków między modelem matematycznym procesu fizycznego i procesem mu równoważnym, przeprowadzonym na podstawie tego modelu na komputerze. Modelowanie ukazuje związki pomiędzy procesem, a jego modelem matematycznym, natomiast symulacja dotyczy związków między modelem matematycznym procesu fizycznego i procesem mu równoważnym, przeprowadzonym na podstawie tego modelu na komputerze. Modelowanie ukazuje związki pomiędzy procesem, a jego modelem matematycznym, natomiast symulacja dotyczy związków między modelem matematycznym procesu fizycznego i procesem mu równoważnym, przeprowadzonym na podstawie tego modelu na komputerze.d płynący w obwodzie RLC. Komputerowa symulacja procesów i doświadczeń fizycznych stanowi rozszerzenie zagadnienia modelowania. Modelowanie ukazuje związki pomiędzy procesem, a jego modelem matematycznym, natomiast symulacja dotyczy związków między modelem matematycznym procesu fizycznego i procesem mu równoważnym, przeprowadzonym na podstawie tego modelu na komputerze. Określenie związków pomiędzy procesem fizycznym, a procesem mu równoważnym nazywa się identyfikacją procesu fizycznego. Symulacja komputerowa procesu fizycznego ma więc na celu wytworzenie wiarygodnej odpowiedzi procesu na dane wymuszenie i w przypadku pisania samodzielnie przez ucznia komend języka programowania pozwala na zagłębienie się w istotę procesu a co za tym idzie jego głębsze zrozumienie.

W oddziałach realizujących Program Dyplomowy Matury Międzynarodowej w ramach określonej przez International Baccalaureate Organization 4-ej grupy przedmiotowej, istnieje bardzo wiele obszarów, w obrębie których zarówno ze strony podmiotu nauczania jakim jest uczeń jak i współtworzącego proces nauczania nauczyciela pełniącego rolę swoistego tutora, oprogramowanie jakim jest Python i SageMath jest wprost pożądane jako element zastosowania metod numerycznych i statystycznych w rozwiązywaniu problemów fizycznych. Poniższe zestawienie jest wypracowanych zbiorem opisanych powyżej zastosowań, które znalazły aplikację w trakcie realizacji zajęć z zakresu Physics Standard/Higher Level w XXXIII Liceum Ogólnokształcącym Dwujęzycznym im. Mikołaja Kopernika w Warszawie:

Tabela 3 Zakres potencjalnego zastosowania SageMath w fizyce z przykładami.
Przedmiot godz. Potencjalne użycie Python/SageMath

Measurements and uncertainties:

  • 1.1 - Measurements in physics
  • 1.2 - Uncertainties and errors
  • 1.3 - Vectors and scalars
5h Obliczanie niepewności pomiarowych, operacje na wektorach. Przykładem może być scenariusz lekcji „Badanie ruchu przyśpieszonego” Część informatyczna. Operacje na wektorach mogą być efektywnie realizowane w SageMath wykorzystując podsystem algebry liniowej. Do dyspozycji są funkcje wizualizujące vector_plot i arrow.

Mechanics:

  • 2.1 - Motion
  • 2.2 - Forces
  • 2.3 - Work, energy and power
  • 2.4 - Momentum and impulse
22h

Sporządzanie wykresów zależności drogi, szybkości i przyśpieszenia od czasu. Modelowanie torów ruchu - wykorzystanie funkcji parametric_plot. Rozwiązywanie kinematycznego równania ruchu metodami numerycznymi. Przykładem takiego podejścia może być modelowanie rzutu ukośnego:

Thermal physics:

  • 3.1 - Thermal concepts
  • 3.2 - Modelling a gas
11h Modelowanie stanu gazu doskonałego. Sporządzanie wykresów w dowolnej przemianie gazowej. W dużą rolę odgrywa tu rysowanie wykresów funkcji np. rozdział Wizualizacja.

Waves:

  • 4.1 - Oscillations
  • 4.2 - Travelling waves
  • 4.3 - Wave characteristics
  • 4.4 - Wave behaviour
  • 4.5 - Standing
15h Sporządzanie zależności wychylenia, prędkości i przyspieszenia danego ciała w ruchu drgającym, modelowanie fali poprzecznej i podłużnej. Superpozycja w ruchu harmonicznym. dobrym przykładem jest scenaiusz Fale dźwiękowe oraz przykład paczki falowej z Wizualizacja..

Electricity and Magnetism:

  • 5.1 - Electric fields
  • 5.2 - Heating effect of electric currents
  • 5.3 - Electric cells
  • 5.4 - Magnetic effects of electric currents
15h

Rozwiązywanie równań opisujących obwód prądu za pomocą pierwszego i drugiego prawa Kirchhoffa. Równania takie można rozwiązywać za pomocą algebry liniowej lub algebry symbolicznen wykorzystując funkcję solve, zob.:. .

Modelowanie pola wektorowego może być zilustrowane funkcjami vector_plot i arrow.

Circular motion and gravitation:

  • 6.1 - Circular motion
  • 6.2 - Newton’s law of gravitation
5h Numeryczne rozwiązywanie równania różniczkowego opisującego II Zasadę Dynamiki Newtona dla dowolnego punktu materialnego w danym polu wektorowym. Można rozszerzyć metody zaprezentowane w http://visual.icse.us.edu.pl/szkola/rzut_ukosny.html.

Atomic, nuclear and particle Physics:

  • 7.1 - Discrete energy and radioactivity
  • 7.2 - Nuclear reactions
  • 7.3 - The structure of matter
14h Modelowanie krzywych zaniku promieniotwórczego. Obliczanie czasów półtrwania izotopów. Przydatnym narzędziem może okazać się zarówno numeryczne jak i algebraiczne rozwiązywanie równań różniczkowych: desolve. Pomocna może okazać się wizualizacja funkcji Wizualizacja. z rozdziału SageMath w pigułce.

Energy production:

  • 8.1 - Energy sources
  • 8.2 - Thermal energy transfer
8h Sporządzanie wykresów zależności długości emitowanej fali elektromagnetyczne j od temperatury: prawo Viena. Prawo zaniku wykładniczego temperatury. Pomocna może okazać się wizualizacja funkcji Wizualizacja. z rozdziału SageMath w pigułce.

Wave phenomena:

  • 9.1 - Simple harmonic motion
  • 9.2 - Single-slit diffraction
  • 9.3 - Interference
  • 9.4 - Resolution
  • 9.5 - Doppler effect
17h Model zależności natężenia światła od kąta ugięcia dla pojedynczej szczeliny, podwójnej szczelny (doświadczenie Younga) oraz dla układu szczelin. Można łatwo rozszerzyć przykład paczki falowej z Wizualizacja. do pokazania tych zjawisk.

Fields:

  • 10.1 - Describing fields
  • 10.2 - Fields at work
11h Modelowanie pola wektorowego. W rozdziale Wizualizacja. znajduje się przykład wizualizacji pola wektorowego. Należy zwrócić uwagę, ze rozszerzenie tego przykładu na np. pole pochodzące od układu dipoli jest stosunkowo proste, stosując technikę analogiczną do tej przy rysowaniu paczki falowej.

Electromagnetic induction:

  • 11.1 - Electromagnetic induction
  • 11.2 - Power generation and transmission
  • 11.3 - Capacitance
16h Sporządzanie zależności strumienie wektora indukcji magnetycznej od czasu i obliczanie pierwszej pochodnej (prawo indukcji Faradaya). Zob. przykład oblicznia pochodnej w zadaniu Ławiej powiedzieć niż zrobić!.

Quantum and nuclear Physics:

  • 12.1 - The interaction of matter with radiation
  • 12.2 - Nuclear physics
16h Modelowanie kształtów orbitali atomowych. Możliwe jest wykorzystanie implicit_plot3d do narysowania orbitali atomowych.

Projekty międzyprzedmiotowe

Uwagi ogólne

Narzędzia SageMath, w szczególności wzbogacone skryptami w Python, dają ogromne możliwości do wykorzystania w realizacji projektów międzyprzedmiotowych. Wszelkie symulacje, badania teorii i zjawisk, obliczenia, analiza i prezentacja pomiarów, rozwiązywanie problemów eksperymentalnych i badawczych uczeń może wykonać za pomocą darmowego narzędzia, dostępnego on-line - wręcz na swoim smartfonie. Poza omówionymi wcześniej matematyką i fizyką, w zasadzie każdy przedmiot, którego uczący nauczyciel chciałby zaangażować uczniów do głębszej analizy, zainteresowania przedmiotem, wykorzystania ciekawości świata uczniów, może zaplanować problem, którym zaciekawi uczniów.  Mogą to być projekty badawcze, koncepcyjne lub  praktyczne.

Nauczyciele organizujący projekt międzyprzedmiotowy odpowiadają na pytania:

  1. Jakie cele chcemy osiągnąć?
  2. Jakiego typu to będzie projekt (badawczy, koncepcyjny, praktyczny)?
  3. Jaki będzie temat projektu?
  4. Jakie zagadnienia zostaną włączone do realizacji?
  5. Na jakie pytania uczniowie mają
  6. odpowiedzieć, jakie działania zaplanować?
  7. Jakie mają być rezultaty projektu?
  8. Jak uczniowie będą dokumentować wykonane działania?
  9. Czy uczniowie mają postawić tezę i ją udowodnić (bądź obalić)?
  10. Czy zaplanować eksperyment, symulacje, czy badania, co badać, mierzyć, obliczać?
  11. Jakie będą ramy czasowe projektu?
  12. Czy projekty będą indywidualne, czy zespołowe?
  13. W jaki sposób uczniowie zostaną wybrani do zespołów?
  14. Czego uczniowie nauczą się w trakcie realizacji projektu?
  15. Co będzie w instrukcji do projektu?
  16. Jak sprawdzimy wiedzę po realizacji projektu?
  17. Jakie warunki muszą być zapewnione do realizacji projektu?
  18. Kiedy będą konsultacje?
  19. Jak będzie oceniany projekt?
  20. Jak zorganizujemy prezentację rezultatów projektu?

Projekty badawcze

W ramach projektów badawczych uczniowie przeprowadzają badania teoretyczne lub praktyczne. Zbierają, porządkują i systematyzują informacje na zadany temat. Opracowują plan badawczy, może nowe koncepcje rozwiązań (badają możliwości wprowadzenia tych rozwiązań). Efektem takich projektów mogą być: publikacje wyników badań (np. strony internetowe, prezentacje), wystawy. Przykłady grup projektów:

Matematyka + informatyka

Projekt Badanie funkcji

Projekt polega na zbadaniu własności wybranej funkcji i zaprezentowaniu badań w postaci wykresów i tabel. Tego typu projekt może być zorganizowany w wielu wariantach. Nauczyciel może sam wybrać funkcje dla uczniów, np stosując zasadę im lepsza ocena z matematyki, tym trudniejsza funkcja do zbadania, może także przygotować koperty do rozlosowania, bądź wybór funkcji przez uczniów uczynić jednym z elementów projektu. Badanie może być wykonywane w grupach bądź indywidualnie. Może się zakończyć opublikowaniem wyników badań na serwerze SageMath lub wykonaniem dokumentu stanowiącego sprawozdania z badań, strony internetowej czy prezentacji.

Ten projekt został wykonany w pięciu oddziałach, zewaluowany i opisany w rozdziale 4 w części “Dobre praktyki:”. Wypracowana w ten sposób metodyka prezentuje kolejne kroki przygotowania i organizacji projektu, wskazówki dla nauczyciela, etapy realizacji w postaci cyklu zajęć oraz rezultaty w postaci prac uczniów.

Jest to materiał gotowy do zastosowania. Instrukcja do projektu znajduje się w materiałach dla nauczyciela. W materiałach znajdują się także przykładowe prace uczniów, zarówno w postaci publikacji na serwerze, jak i w postaci skanów drukowanych dokumentów wykonanych przez uczniów z użyciem pakietu Latex.

Informatyka + geografia

Projekt Losowy punkt na Ziemi

Jedna grupa pisze skrypt (w Python), który losuje dwie liczby - szerokość i długość geograficzną. (Oczywiście losowanie można zorganizować inaczej). W ten sposób zostaje wylosowany punkt X na Ziemi. jeśli będzie to punkt na oceanie uczniowie losują jeszcze raz, (chyba, że projekt będzie dotyczył mórz i oceanów).  Uzyskany w ten sposób punkt, lub grupa punktów stanowią dane do tematów:

  • Zaplanuj trasę z punktu startowego S do docelowego (może to być punkt S) przez wylosowane punkty, tak, aby pokonać jak najkrótszą drogę i odwiedzić wszystkie punkty (np. żadną trasą nie podróżować dwa razy). Udowodnij, że to najlepszy wariant. Opisz trasę, środki transportu, czas podróży, koszt transportu. To algorytmiczny problem komiwojażera. Losujemy tyle punktów aby zadanie nie przerosło uczniów.
  • Zaplanuj wyprawę z Warszawy do punktu X. Wykonaj symulację podróży. Sprawdź możliwości rezerwacji, Zaproponuj alternatywnie etapy, czas,  rodzaje transportu, noclegów, wyżywienia, biorąc pod uwagę koszt, przygotowania, wyposażenie, zagrożenie i inne elementy i czynniki dla  wyprawy.  Sporządź wykresy pogodowe dla całego czasu wyprawy.  wykres zmian temperatur.  Dołącz galerię map i album zdjęć.
  • Zaplanuj wyprawę z punktu A do B. Zaplanuj warianty podróży zależnie od tego, co warto zobaczyć/zwiedzić po drodze. Dołącz wykresy kosztów, temperatur, czasu podróży, galerię map i album zdjęć.

Ten projekt został zrealizowany w wielu oddziałach, uczniowie tworzyli strony internetowe ze sprawozdaniami z wirtualnych podróży.

Fizyka, matematyka + język angielski

Wykorzystanie rezultatów pozwala na rozwój umiejętności leksykalnych w obrębie języka angielskiego inżynieryjno-technicznego. Współczesne formy wykorzystania w pracy ucznia przedmiotów matematyczno-przyrodniczych elementów technologii informacyjnej i komunikacyjnej nie stanowi tylko prawnego obowiązku, ale przede wszystkim ma za zadanie urozmaicać przygotowanie do konkursów/olimpiad i stanowić w jej odbiorze użyteczne narzędzie oraz element korygujący odbiór toku logicznego zajęć.

Może to być wykorzystywane jako forma pracy z uczniem zdolnym. Uczeń - olimpijczyk nie może wyobrażać sobie pracy, bez użycia współczesnych, co warte podkreślenia, aktualnie kształconym pokoleniom, technik informatycznych. Na bieżąco musi doskonalić swoje umiejętności obsługi programów komputerowych i języków programowania. Choć wiele realizowanych tematów będzie mu nieznanych, ponieważ dopiero w trakcie studiów magisterskich lub doktoranckich realizuje się zajęcia z języków programowania użytkowanych w chemii i fizyce, to jednak nabycie nowych umiejętności aplikacji komend językowych do rozwiązywania problemów natury rachunkowej, niedostępnych uczniom realizujących polską podstawę programową matematyki, nawet w zakresie rozszerzonym pozostaje wciąż w ich gestii.

W codziennej, szkolnej pracy, uczeń wykorzystuje technologię komputerową głównie do tworzenia różnorodnych testów użytkowych, diagnoz, narzędzi badawczych i ankiet. Własny warsztat pracy jest uporządkowany i na bieżąco udoskonalany. Wszystkie te programy i aplikacje charakteryzuje stosunkowo intuicyjna i oparta o proste relacje metoda ich konstrukcji, a co za tym brak możliwości zmian i wykonywania w nich innych niż umożliwione przez producenta operacji. Zarówno z punktu widzenia nauczyciela, jak i ucznia, będącego podmiotem procesu nauczania nie bez znaczenia pozostaje możliwość rozwiązywania problemów określonych w podstawie programowej oraz wykraczających poza jej ramy, w oparciu o szerokie spektrum metod znajdujących zastosowanie zarówno z punktu widzenia uczącego, jak i nauczanego. Olimpijczyk podejmujący analizę zagadnień obecnej oraz powstającej na skutek planowanej reformy systemu oświaty podstawy programowej przedmiotów takich jak fizyka i chemia i napotyka na wiele treści, których zrozumienie wymaga zastosowania złożonego rachunku z elementami analizy matematycznej. Zajęcia te zdecydowanie ułatwią mu pozyskiwanie wiedzy olimpijskiej z użyciem współczesnych metod rozwoju wiedzy.

Realizacja projektu pozwoliła też (co nie było pierwotnym zamierzeniem pomysłodawców całego przedsięwzięcia) na integrację między przedmiotami fizyka i język angielski. Uczniowie na lekcjach fizyki lub w domu wykonywali pomiary, których rezultaty należało później opracować w formie sprawozdania o z góry ustalonej strukturze. Pomiary dotyczyły następujących zagadnień:

  • Badanie drgań struny
  • Pomiar przyspieszenia w ruchu jednostajnie przyspieszonym
  • Analiza zderzeń ślizgaczy na torze powietrznym.

Zasadniczo uczniowie na moich lekcjach wykonują dużo doświadczeń i mają już wprawę w pisaniu sprawozdań (wymagania co do formy i treści sprawozdania opublikowane są w formie PDF na stronie internetowej szkoły). Te trzy tematy włączyłem jednak do projektu, a uczniom poleciłem opracować sprawozdania nie w formie papierowej, tylko jako notatniki SageMath. Dzięki temu wszystkie obliczenia, wykresy i komentarze można było zrealizować za pomocą jednego wygodnego narzędzia.

Ponieważ projekt jest międzynarodowy i jego rezultaty muszą zostać przetłumaczone, poszedłem o krok dalej. Porozumiałem się z anglistami uczącymi w danych klasach i ogłosiłem, że najlepsze sprawozdania “przechodzą do finału” a ich autorzy zyskują przywilej przetłumaczenia swoich prac na język angielski, za co otrzymają dodatkowe punkty zarówno z fizyki, jak i z języka angielskiego. Warunkiem było uzyskanie pełnej akceptacji dokonanego tłumaczenia zarówno przez anglistę, jak i przeze mnie (sprawdzałem, czy tłumaczenie nie wypaczyło sensu merytorycznego opracowania). Faktycznie, uczniowie najwyżej ocenieni za polską wersję sprawozdania z radością przetłumaczyli swoje prace, a ich kopie opublikowałem na serwerze jako część końcowego raportu.

Wszyscy angliści byli bardzo zadowoleni ze współpracy. Oprócz standardowego języka angielskiego, prowadzą oni w klasach ścisłych przedmiot o nazwie język angielski techniczny. Udział w projekcie był dla nich okazją, by zastosować nauczane słownictwo i zwroty w żywym tekście naukowym nadzorowanym przez fizyka.

Projekty koncepcyjne

W ramach takich projektów uczniowie wykonują modele umożliwiające przeprowadzenie symulacji działania w rzeczywistej sytuacji. Symulacje w matematyce, fizyce, przedsiębiorczości, biologii, socjologii i innych dziedzinach.

Informatyka

Grafy: Zaplanuj model komunikacji lub zaopatrzenia w wodę w danej miejscowości.

Ten projekt został zrealizowany, uczniowie poprawiali drogi w województwie mazowieckim.

Przedsiębiorczość + informatyka

Projekt Symulacja inwestycji kapitałowych

Uczniowie losują wirtualny kapitał w kwocie X z kraju Y. Ich zadaniem jest wykonanie symulacji inwestycji zadanych części kapitału na różne sposoby. Np. 10% kapitału w lokaty bankowe, 20% w fundusze powiernicze, obligacje skarbu państwa, 30% giełda papierów wartościowych, 40% inwestycja własna (z wyłączeniem hazardu, loterii, nielegalnej działalności itp). Symulacja obejmuje np. jeden rok (warunki ustalone). Uczniowie sporządzają sprawozdania z poszczególnych inwestycji, wyjaśniają pojęcia, sporządzają wykresy i obliczenia, podsumowanie i wnioski.

Ten projekt był realizowany przez wiele lat, w klasach drugich i trzecich różnych profili. Instrukcja do projektu, przykładowe prace uczniów, wskazówki metodyczne dla nauczyciela znajdują się w materiałach.

Informatyka + biologia

Symulacja zmian w populacji ludzi przy zadanych warunkach lub wybranych gatunków zwierząt (lisy i króliki).

Projekty praktyczne

Uczniowie opracowują rozwiązania problemów praktycznych dla szkoły lub społeczności lokalnej, Przykłady tematów: przygotowanie pomocy dydaktycznych, plan wysadzenia krzewów na szkolnym terenie, zorganizowanie zawodów szachowych, zorganizowanie warsztatów “Przykłady wykorzystania SageMath w matematyce” dla młodszych kolegów.

Uwagi metodyczne do realizacji metody projektów

Najlepiej podjąć decyzję o wprowadzeniu metody projektów już  na początku semestru czy roku szkolnego. Przy braku doświadczeń z wykorzystaniem tej metody, warto rozpocząć projekty od niewielkich przedsięwzięć, czyli jednej godziny lekcyjnej, potem cyklu zajęć, aby nabrać wprawy w stosowaniu metody.

Podział uczniów na zespoły można zaplanować na wiele sposobów, najlepiej zadbać o to, aby w każdym zespole znaleźli się uczniowie o różnym poziomie osiągnięć szkolnych. Grupy pracują sprawnie, gdy liczą 2, 4 osoby. Ważna jest pomoc nauczyciela przy  wspólnym opracowaniu podziału ról i terminów. Kolejne kroki i ustalenia w zespole, nad którymi czuwa nauczyciel, prosząc uczniów o utworzenie notatki z każdego spotkania grupy podczas lekcji: W notatce powinny się znaleźć następujące ustalenia:

  1. Wybór przewodniczącego zespołu.
  2. Odczytanie instrukcji do projektu.
  3. Omówienie poziomu trudności elementów projektu, propozycje podziału pracy.
  4. Wybranie osoby, która będzie opracowywała dokument wynikowy.
  5. Ustalenie terminów i autorów wykonania elementów projektu.
  6. Ustalenie sposobu kontaktów w zespole.
  7. Utworzenie przez przewodniczącego zespołu harmonogramu prac.
  8. Ustalenie sposobu wymiany informacji bieżących.
  9. Ustalenie standardów wykonawczych (np. utworzenie szablonu dokumentu, formatowanie, czarno-biały lub kolor, rozmiary wykresów, itp).
  10. Uzupełnianie harmonogramu prac w ustalonych terminach spotkań zespołu.
  11. Wymiana na bieżąco uwag odnośnie postępu prac, elastyczne modyfikowanie ustaleń.
  12. Miła atmosfera spotkań, życzliwość, chęć współpracy, umiejętność rozwiązywania problemów.

Ważne jest monitorowanie pracy zespołów na wszystkich etapach realizacji projektu i prowadzenie notatek. Dobrym pomysłem jest poświęcenie jednej godziny na omówienie projektu, wybór grup i podział pracy. Potem co dwa tygodnie sprawdzanie postępów prac i notowanie ich w przygotowanej tabeli. Ustaleniu terminu konsultacji dla uczniów. Następnie przeznaczenie jednej godziny przed terminem oddania projektu na sprawdzenie postępu prac i ich omówienie. Oczywiście nauczyciel może przekładać termin oddania projektu w szczególnych przypadkach, jednak przy projektach długoterminowych należy unikać takich uprzejmości.

Kryteria oceny trzeba ustalić wspólnie z drugim nauczycielem, można skonsultować z uczniami. Każdy nauczyciel może zamieścić w kryteriach oceny swoją część. Najlepiej określić ilość punktów za poszczególne elementy projektu. Wówczas ocena nie nastręcza nauczycielowi żadnych trudności. Wszystkie oceniane elementy projektu muszą zostać wymienione w instrukcji, wyraźnie określone z podaną punktacją. Kryteria oceniania nie mogą ulec zmianie w trakcie realizacji projektu. Dlatego ta część instrukcji musi być przedyskutowana i dobrze przemyślana. Nauczyciele nie mogą omówić projektu dodając w nim elementy, których nie ma w instrukcji. Oczekiwania co do rezultatów projektu, czyli co ma zawierać i jak ma wyglądać publikacja, pokaz, film, dokument, prezentacja, dokumentacja zdjęciowa,  materiał, strona internetowa lub inny rodzaj rezultatu muszą być wyraźnie określone. Na końcu każdego projektu powinny się znaleźć podsumowania i wnioski. Można także zachęcać uczniów do podsumowań nabytych doświadczeń w pracy grupowej i samooceny.

Prezentacje projektów przed grupą warto podzielić na części ze wskazaniem maksymalnego czasu na prezentację. Mogą to być: część teoretyczna, część praktyczna prezentowana kolejno przez uczestników zespołu, część podsumowująca. Całkowity czas prezentowania projektu najlepiej zaplanować na 10 minut, maksymalnie 20 minut. Także w czasie prezentacji wyników projektu nauczyciel powinien zadbać o życzliwą atmosferę, aby uczniowie wzajemnie się słuchali i nagradzali się brawami. Ocena końcowa może być jedna bądź kilka. To także musi być wyraźnie wskazane w instrukcji.

Projekty grupowe międzyprzedmiotowe są bardzo dobrze oceniane przez uczniów w badaniach ewaluacyjnych. Często odwiedzają mnie absolwenci, którzy zwracają uwagę, że nabyte podczas pracy nad projektem grupowym doświadczenia bardzo im pomogły w czasie studiów. To bardzo ważne, aby uczniowi zostawić miejsce na twórczość i samodzielność. Aby tak zaplanować realizację materiału, żeby znalazło się miejsce na projekt, Jest to metoda trudna do organizacji dla nauczyciela, ale obserwowanie twórczości uczniów zawsze przynosi nauczycielowi wiele satysfakcji.

Dobre praktyki

  1. Projekt indywidualny Badanie funkcji

Projekt jest przeze mnie realizowany od wielu lat, ponieważ cieszy się dobrymi opiniami uczniów. Jest organizowany w klasach trzecich o profilu matematyczno-fizycznym. Od trzech lat polecam uczniom wykonanie projektu z użyciem SageMath. Wcześniej posługiwali się arkuszem kalkulacyjnym i portalem wolframalpha.com. W domu uczniowie wykorzystują portal https://cloud.sagemath.com. W szkole mogli sprawdzone wcześniej (w domu) polecenia przenieść na szkolny serwer SageMath i opublikować.

Instrukcja do projektu zakłada: wybór przez ucznia funkcji o ciekawych własnościach, przeprowadzenie badania wybranej funkcji zgodnie z przykładowym planem oraz udokumentowanie badania.

W ramach niniejszego projektu przeprowadziłam realizację tego uczniowskiego projektu indywidualnego w czterech grupach, z czterech oddziałów (zajęcia z informatyki są prowadzone w grupach nie przekraczających 16 uczniów). Każda z grup przeszła nieco inną ścieżkę celem sprawdzenia, która z metod będzie w ocenie uczniów, a także w moim podsumowaniu najlepsza.

  • W pierwszej grupie  uczniowie najpierw dostali projekt do zrealizowania. Na SageMath poświęciłam tylko jedną lekcję. Uczniowie nie znali SageMath i uczyli się ze źródeł Internetowych i nauczyciela tylko niezbędnych do zrealizowania projektu poleceń.
  • W drugiej grupie uczniowie najpierw uczestniczyli w warsztatach z wykorzystania SageMath w matematyce a potem dostali zadanie wykonania projektu. Wśród ćwiczeń były też takie, które można wykorzystać w projekcie.
  • W trzeciej grupie uczniowie najpierw badali funkcję na papierze z kalkulatorem, potem poznali różne narzędzia SageMath, do tych samych obliczeń, które wykonali na kartce.
  • Czwarta grupa uczestniczyła najpierw w warsztatach z SageMath, potem warsztaty z Latex, potem przypomnienie obliczeń matematycznych niezbędnych w badaniu funkcji a potem projekt do wykonania z wykorzystaniem SageMath i Latex.

Każda z grup miała inne zadanie co do postaci końcowej projektu. Dla grup 2 i 3 w postaci wydruku pliku w formacie pdf, dla grupy 1 w postaci publikacji na portalu SageMath w języku angielskim a dla grupy 4 wydruk dokumentu utworzonego w Latex. Dokument pdf ze stroną tytułową, spisem treści, nagłówkiem/stopką, numeracją stron, wykorzystujący punktację, sformatowany z przestrzeganiem zasad formatowania dokumentów.

Każda z grup odpowiadała na standardowe pytania. Oprócz tego każda z grup odpowiadała na pytanie wiodące. Grupa pierwsza odpowiadała na pytanie Czy łatwo nauczyć się samodzielnie wybranych elementów SageMath, tych potrzebnych do projektu. Druga grupa odpowiadała na pytanie Czy ćwiczenia z SageMath poprzedzające wykonanie projektu okazały się pomocne. Trzecia grupa oceniała SageMath z punktu widzenia przydatności i oszczędności czasu. Czwarta grupa dodatkowo wypowiadała się na temat pakietu Latex.

Praca z uczniem zdolnym

Głównym celem wprowadzenia elementów języka programowania Python i SageMath w szkole średniej, jest kształtowanie umiejętności pisania przez nauczyciela jak i ucznia oprogramowania służącego do rozwiązywania skomplikowanych problemów matematycznych występujących w trakcie realizacji podstawy programowej przedmiotów ścisłych i przyrodniczych. W efekcie realizacji zajęć lekcyjnych z zastosowaniem tej metody zarówno nauczyciel jak i uczeń będzie mógł stosować poniższe rozwiązania na lekcjach chemii i fizyki tam, gdzie trudność matematyczna może zostać pokonana w stosunkowo łatwy sposób. Program wykorzystuje komendy, które pozwalają uzyskać rozwiązania problemów analizy i algebry takich jak równania różniczkowe, całki, pochodne i wykresy złożonych zależności nieliniowych. Komendy języka i produkty ich działania mogą zostać wypracowane wraz z uczniami, co służy wspólnemu pogłębieniu znajomość języka programowania i jego aplikacji. Przykładami wartymi zastosowania tego typu metody nauczania może być porównanie przemiany adiabatycznej i izotermicznej, otrzymanie rozwiązania w postaci wykresu zależności obu przemian i badanie zmiennej zależnej poprzez zmianę zmiennej zależnej in vivo. Analogicznie zaleca się analizę złożonego problemu prawa stygnięcia Izaaka Newtona warto rozważyć poprzez napisanie programu w języku Python i Sage, wraz ze sporządzeniem formuły, która kreśli uzyskaną zależność oraz podaje równanie opisujące to zjawisko. Nauczyciel chemii i fizyki jest zobowiązany wprowadzać na bieżąco i w miarę potrzeb sygnalizowanych przez uczniów, rodziców oraz pozostałych nauczycieli zespołu nauk przyrodniczych, innowacyjne metody podczas realizacji zajęć obejmujących podstawę programową oraz wykraczających poza ich ramy. Szczególnie, współczesny nauczyciel, powinien być autorem projektów wprowadzających nowoczesne technologie do pracy z uczniem o szczególnych uzdolnieniach. Najlepszym przykładem obrazującym podejście do pracy z uczniem o szczególnych zainteresowaniach interdyscyplinarnych jest problem dotyczący rozwiązywania skomplikowanych problemów matematycznych typu równanie różniczkowe o zmiennych nierozdzielonych występujące w klasycznych olimpijskich zadaniach z termodynamiki. Warto zwrócić uwagę na fakt, że niektóre z tego typu problemów nie objętych zakresem narodowej podstawy programowej, występują jako obowiązkowe w podstawie Programu Dyplomowego Matury Międzynarodowej i są rozwiązywane z użyciem kalkulatorów numerycznych. W tym przypadku nauczyciel może stosować metody programowania łącznie z technikami nauki współpracy w grupie. Reprezentatywnym przykładem użycia tego typu rozwiązań jest zagadnienie teorii słabych kwasów i zasad. Problem ten jest jednym z zagadnień podstawy programowej z przedmiotu chemia, uważanym za trudne. Napisanie z uczniami programu, wraz z instrukcją w języku angielskim pozwala w sposób prosty zrozumieć zasady rządzące dysocjacją elektrolitów słabych.

Nauczyciel, podczas pracy z uczniem o szczególnych uzdolnieniach powinien wdrażać na lekcjach chemii, fizyki i prowadzonych zajęciach pozalekcyjnych metody aktywizujące. Metody te kształtują umiejętności, stwarzają warunki ułatwiające uczenie się, aktywizują, są atrakcyjne dla uczniów i uwzględniają różne style uczenia się. Stosowanie metod aktywizujących w procesie dydaktycznym sprzyja pogłębieniu zdobytej wiedzy, jej operatywności i trwałości. Uczniowie myślą twórczo podczas wykonywania podjętych działań. Angażują się emocjonalnie, są aktywni w sferze percepcyjnej, ruchowej, werbalnej i emocjonalno-motywacyjnej. Zastosowanie języka programowania Python i SageMath pozwala uczniom szczególnie zainteresowanych udziałem w olimpiadach i konkursach przedmiotowych rozwiązywać złożone problemy arytmetyczne takie jak: sporządzanie wykresów zależności stopnia wyższego niż dwa, poszukiwanie miejsc zerowych złożonych funkcji, optymalizacja czy też obliczanie pochodnych lub całek skomplikowanych wyrażeń będących opisem matematycznym danych zjawisk fizykochemicznych.

Samodzielne zdobywanie wiedzy i umiejętności przez ucznia

Nauka matematyki dla większości uczniów nie jest łatwym zadaniem, ponieważ proces ten wymaga od nich znajomości abstrakcyjnych pojęć i ścisłego rozumowania w celu właściwego ich zastosowania. Nauczanie matematyki polega na osiągnięciu dwóch ważnych celów:

  1. Opanowaniu przez uczniów wiedzy i zrozumienie koncepcji matematycznych.
  2. Wykształceniu matematycznego myślenia w celu rozwiązywania nowych problemów.

Niektórzy eksperci od edukacji matematycznej wyróżniają pięć aspektów umiejętności, które uczniowie powinni rozwinąć w trakcie procesu uczenia się:

  • zrozumienie koncepcji -  rozumienie pojęć matematycznych, operacji i relacji,
  • płynność w stosowaniu procedur - umiejętność elastycznego, precyzyjnego, sprawnego i właściwego zastosowania procedur
  • umiejętności strategiczne - formułowanie, reprezentacja i rozwiązywanie problemów matematycznych,
  • rozumowanie adaptacyjne - zdolność do logicznego myślenia, refleksji, wyjaśnień i uzasadniania,
  • odpowiednie nastawienie - postrzeganie matematyki jako nauki uporządkowanej, użytecznej i wartej zgłębiania, połączone z jej wielorakim zastosowaniem i świadomością własnej skuteczności.

Ponieważ wielu uczniów nie posiada tych umiejętności, SageMath oferuje sposób na ich zdobycie poprzez zmianę metod nauczania i uczenia się matematyki. Istnieje jednak ryzyko, że używając SageMath uczeń rozwiąże zadania nie rozumiejąc związanych z nimi pojęć i algorytmów. Odpowiednie wykorzystanie przez nauczyciela środowiska SageMath podczas lekcji może ułatwić uczniom zrozumienie koncepcji i wyrobienie w nich pozytywnej motywacji do nabywania biegłości w stosowaniu procedur matematycznych.

Cechy SageMath, które są uważane za najbardziej istotne w procesie nauczania matematyki:

  • umożliwienie przedstawienia różnych reprezentacji badanych obiektów.
  • interpretacja graficzna skomplikowanych pojęć.
  • przetwarzane przez komputer długich i żmudnych obliczeń, dzięki czemu uczniowie mogą skoncentrować się na koncepcjach i powiązaniach między nimi.

Systemy algebry komputerowej, takie jak SageMath, umożliwiają nauczanie matematyki z wykorzystaniem komputera. Zdobywanie przez uczniów wiedzy na lekcjach przy pomocy SageMath można ogólnie podzielić na dwa sposoby:

  1. Przekazywanie wiedzy przez nauczyciela - komputer jest używany jako narzędzie do prowadzenia prezentacji przez nauczyciela. Na przykład nauczyciel omawia własności funkcji na podstawie jej wykresu lub przedstawia prezentację jakiegoś zagadnienia. Główny akcent położony jest tutaj na przygotowanie odpowiednich materiałów.
  2. Samodzielne (lub pod kierunkiem nauczyciela) nabywanie wiedzy przez ucznia - uczniowie wykorzystują komputer jako narzędzie wspomagające ich procesy myślowe. Są oni w stanie znaleźć różne fakty matematyczne i zastosować je w praktyce. Bardzo skuteczne w takich sytuacjach jest wykorzystanie platformy SageMath jako narzędzia wspomagającego pracę uczniów.

Efektywne wykorzystanie SageMath w nauczaniu matematyki wprowadza do tradycyjnej edukacji innowacyjne i jakościowe zmiany, które obejmują weryfikację materiałów edukacyjnych i/lub zmianę sposobu nauczania. Pożądana zmiana w nauczaniu matematyki polega na przejściu od tradycyjnego wykładu przy tablicy do aktywności uczniów wspomaganej przez system algebry komputerowej.

Jedną z głównych zalet notatnika SageMath jest zintegrowane zarządzanie użytkownikami. Po zainstalowaniu serwera SageMath w szkole każdy uczeń może mieć indywidualne konto i dostęp do tego serwera z dowolnego komputera w szkolnej sieci lokalnej. Uczeń oraz nauczyciel mogą publikować swoje notatniki (mogą utworzyć publicznie dostępne ich kopie). Opcjonalnie, opublikowany notatnik może być automatycznie aktualizowany, w przypadku zapisania zmian w oryginalnym notatniku. Opublikowane notatniki mogą być przenoszone na inne serwery. Właściciel notatnika może udostępnić go innym użytkownikom w celu wspólnej pracy nad jego treścią. Daje to możliwość zorganizowania grupowej pracy uczniów nad rozwiązaniem konkretnego problemu.

Funkcje te umożliwiają następującą organizację pracy:

  • Nauczyciel publikuje notatnik zawierający konkretne zadanie/problem do rozwiązania.
  • Uczeń pracując z kopią tego notatnika rozwiązuje zadanie.
  • Uczeń udostępnia swój notatnik nauczycielowi.
  • Nauczyciel, w razie potrzeby, pisze komentarze i korekty.
  • Nauczyciel publikuje wzorcowe arkusze uczniów.

Podczas pracy z własną kopią notatnika udostępnionego przez nauczyciela uczeń w swoim tempie i czasie nie ograniczonym do tradycyjnej lekcji samodzielnie poznaje zagadnienia, których powinien się nauczyć. Wykorzystując materiały opublikowane przez nauczyciela (np. przedstawienie teorii oraz kod umożliwiający rozwiązanie przykładowych zadań) może zmodyfikować kod tak, aby rozwiązać kolejne zadania zapisane przez nauczyciela w notatniku. W tym celu uczeń musi przeanalizować i zrozumieć kod aby móc go odpowiednio zmodyfikować i rozwiązać zadanie. Uczeń lepiej znający środowisko SageMath i język programowania Python ma możliwość napisania własnego kodu. Nauczyciel może tak sformułować zadania aby uczeń jednocześnie mógł poznać i utrwalić zagadnienia matematyczne oraz wykorzystać środowisko SageMath do ułatwienia i przyspieszenia swojej pracy.

Należy podkreślić, że nowe umiejętności oraz wiedza zdobywane przez ucznia samodzielnie, stopniowo, w jego własnym tempie, w czasie nie ograniczonym jedynie do lekcji w szkole są bardziej trwałe niż w gdyby zostały nabyte przez niego w tradycyjny sposób podczas lekcji.