20TD02U Tilnærmede verdier for den deriverte med programmering - itnett/FTD02N GitHub Wiki

https://trinket.io/python3/387fb75e30

https://ndla.no/subject:1:5a5cac3f-46ff-4f4d-ba95-b256a706ec48/topic:c7111b35-0621-4977-8a31-fe41e8e4a34d/topic:b4ba45c3-b084-45a1-994c-c85eb755ee54/resource:f3126ede-e4d4-412b-b476-cff3c32a50af

This is a Python 3 trinket. It includes everything in Python 3.9.6 as well as scientific libraries like Numpy and SciPy and matplotlib , with more on the way.

[python] La oss først lage et program som kan regne ut tilnærmede verdier for den deriverte til en funksjon ved å bruke numerisk differensiering. Deretter vil vi lage et program som tegner grafen til en vilkårlig tredjegradsfunksjon og beregner den deriverte ved hjelp av numerisk differensiering.

Tilnærmede verdier for den deriverte

Vi starter med å lage et program som beregner tilnærmede verdier for den deriverte av en funksjon.

a) Spørsmål

Hva betyr det at ( f'(0.5) = 1 )? Svar: At ( f'(0.5) = 1 ) betyr at stigningstallet til tangenten til grafen når ( x = 0.5 ) er 1. Det betyr også at den momentane vekstfarten til funksjonen når ( x = 0.5 ) er 1.

b) Spørsmål

Hvorfor kan vi ikke sette ( \Delta x = 0 ) direkte i uttrykket? Svar: Dersom vi prøver å sette ( \Delta x = 0 ) rett inn i uttrykket, får vi 0 i nevneren på brøken.

Algoritme og koding for numerisk derivasjon

Vi lager et program som finner den deriverte ved å bruke en liten verdi for ( \Delta x ) og iterativt redusere ( \Delta x ) for å få en bedre tilnærming.

Se skriptet her

Testing og forbedring av programmet for tilnærmet derivasjon

Nå skal vi teste programmet med ulike verdier for ( \Delta x ) og se hvordan nøyaktigheten forbedres.

Se skriptet her

Implementere programmet for vilkårlige tredjegradsfunksjoner

Til slutt lager vi et program som tar imot en vilkårlig tredjegradsfunksjon fra brukeren, tegner grafen, og beregner den deriverte ved hjelp av numerisk differensiering.

a) Vurdering

Brukeren kan skrive inn tredjegradsfunksjonen ved å angi konstantene ( a ), ( b ), ( c ), og ( d ).

b) Algoritme

  1. Be brukeren om å skrive inn verdiene for konstantene ( a ), ( b ), ( c ), ( d ), samt intervallet ( s ) og ( t ).
  2. Lag en liste ( x ) med 100 verdier fra ( s ) til ( t ).
  3. Lag en liste ( y ) ved å evaluere funksjonen ( f(x) = ax^3 + bx^2 + cx + d ) for hver verdi i ( x )-listen.
  4. Tegn grafen for funksjonen.
  5. Beregn den deriverte ved ( x )-verdier ved hjelp av numerisk differensiering.

c) Koding

La oss implementere dette i et program.

Se skriptet her

d) Spørsmål

Kan programmet brukes til å tegne andregradsfunksjoner eller rette linjer? Svar: Ja, ved å sette noen av konstantene ( a ), ( b ), eller ( c ) til null, kan programmet også brukes til å tegne andregradsfunksjoner eller rette linjer.

Programmet kan utvides med flere funksjoner og forbedringer basert på dine behov. La meg vite om du trenger ytterligere tilpasninger eller flere funksjoner!

[python] For å hjelpe elevene med å oppfylle kompetansemålene KM401 og KM403, samt kjerneelementene KE30 og KE33, kan vi lage interaktive Jupyter-notatbøker og programmer som fokuserer på gjennomsnittlig og momentan vekstfart, samt problemløsning med algoritmisk tenkning og programmering.

1. Beregning av gjennomsnittlig og momentan vekstfart

Jupyter Notebook for gjennomsnittlig og momentan vekstfart

Denne notatboken vil hjelpe elevene med å beregne gjennomsnittlig og momentan vekstfart for en funksjon.

Se skriptet her

2. Problemløsing med algoritmisk tenkning og programmering

Jupyter Notebook for problemløsing med algoritmisk tenkning

Denne notatboken vil veilede elevene i å bruke algoritmisk tenkning for å løse matematiske problemer.

Se skriptet her

3. Representasjon og kommunikasjon i matematikk

Jupyter Notebook for representasjon og kommunikasjon

Denne notatboken hjelper elevene med å bruke matematiske representasjoner og kommunikasjon effektivt.

Se skriptet her

Disse notatbøkene hjelper elevene med å oppfylle kompetansemålene ved å:

  • Beregne og forstå gjennomsnittlig og momentan vekstfart (KM401).
  • Bruke algoritmisk tenkning og digitale verktøy for problemløsning (KM403).
  • Utforske mønstre og sammenhenger i matematiske representasjoner (KE30).
  • Kommunisere matematiske konsepter og resultater ved hjelp av visuelle og symbolske representasjoner (KE33).

La meg vite om du trenger ytterligere tilpasninger eller flere ressurser!