DTU Compute, Matematik 1,
KunstigIntelligens123-holdene, 2023-2024

E23, Mat 1a
Tips til pensum og opgaverne på StoreDag
(og enkelte til LilleDag, Temaøvelser og Hjemmeopgaver)

Eksamen 5/12-2023 Steens løsninger til eksamenssættet kan ses her.

Del 1 (håndregning): 1haand.pdf eller 1haand.mw

Del 2 (MC med Python): 2python.pdf eller 2python.ipynb
Test-eksamen Steens løsninger til test-eksamenssættet kan ses her.

Del 1 (håndregning): 1haand.pdf eller 1haand.mw

Del 2 (MC med Python): 2python.pdf eller 2python.ipynb
Python/SymPy Praktisk anvendelse af Python/SymPy i VisualStudioCode til eksamen del 2, hvor programmet må anvendes.

Små fiduser: fiduser.pdf eller fiduser.ipynb
Komplekse tal: kompleks.pdf eller kompleks.ipynb
Polynomier: polynom.pdf eller polynom.ipynb
Funktioner og differentiation: funktion.pdf eller funktion.ipynb
Matrixregning: matrix.pdf eller matrix.ipynb
Matricer som vektorer: vektmatr.pdf eller vektmatr.ipynb
Ligningssystem: lignsyst.pdf eller lignsyst.ipynb
Differentialligninger: difflign.pdf eller difflign.ipynb

NB: Ved at tilføje linjen "AddType application/octet-stream .ipynb" i ".htacess"-filen i roden af mit website, så vil en ".ipynb"-fil blive downloadet frem for vist i browseren!
Om eksamen Eksamen i Mat1a er tirsdag d. 5/12-2023.
Pensum og eksamensform er nyt, så svært at sammenligne med tidligere år! Pas på tips fra gamle studerende.

Steens tips til eksamen: goderaad.pdf
Zoom-møde Søndag d. 3/12-2023 kl. 19-21 afholder Steen Toft Jørgensen et zoom-møde for de studerende.
Test-eksamenen vil blive gennemgået. Både håndregningsdelen og MC/Python-delen. Det forventes, at du har regnet hele test-eksamenen.
Herudover vil der blive gjort opmærksom på diverse faglige tips, og man kan stille spørgsmål.

NB: DTU har indkøbt adgang til Zoom. Man kan downloade Zoom-programmet til computeren, og logge ind via alm. DTU-login.
For at deltage behøver du ikke logge ind og behøver ikke at have Zoom-programmet installeret, men kan blot være med i browseren.
OBS: mødet foregår altså via internettet!

Brug dette link i browseren kl. 19 søndag d. 3/12 (helst med video slået til så alle kan se hinanden): https://dtudk.zoom.us/j/68946524046
Uge 13 SD Python/SymPy:
NB: "_" (1 underscore) er sidste svar, "__" (2 underscore) er 2. sidste svar, "___" (3 underscore) er 3. sidste svar! Ufatteligt effektivt!
"difflign.subs(y(t),udtryk)" indsætter et udtryk i stedet for y(t) i løsningen af en differentialligningen difflign. Smart når man skal indsætte et udtryk for at bestemme en partikulær løsning.
Også "expand( )" og "simplify( )" er effektive til reduktion.

Om differentialligninger: om-diff.pdf

Løsning af differentialligninger (1. og 2. orden) og differentialligningssystem (1. orden), fuldstændig hhv. betinget løsning med Python/SymPy:
difflign.pdf eller difflign.ipynb
Hjem 4 NB: I opgave (f) er Q og Q-1 er ombyttet i forhold til normale standard!
Uge 12 SD Links WikiPedia:
Ordinary differential equation: https://en.wikipedia.org/wiki/Ordinary_differential_equation
Summary of exact solutions: https://en.wikipedia.org/wiki/Ordinary_differential_equation#Summary_of_exact_solutions

Teori:
Theorem 12.3 og Corollary 12.5 kaldes normalt "panserformlen" på DTU. "P(t)" er stamfunktion til "a(t)" i formlen (står på siden før eller nede i selve beviset)!
Differentialligninger, som burde være kendt fra gymnasiet. Den sidste i skemaet er "panserformlen":
https://www.webmatematik.dk/lektioner/matematik-a/differentialligninger/losninger-til-differentialligninger

Python/SymPy:
En differentialligng kan løses i Python/SymPy med "dsolve(Eq(VS,HS),y(t),ics={y(x0):y0})", hvor begyndelsesbetingelsen (ics) lyder at y(x0)=y0.
VS og HS er venstre og højre side af differentialligningen (formuleret med y(t) som funktionen der løses for). Vigtigt at y(t) er defineret som "y=Function('y')".
Et differentialligngssystem med 2 ligninger kan løses i Python/SymPy med "dsolve((Eq1,Eq2),[y1(t),y2(t)],ics={y1(x0):y01,y2(x0):y02})",
hvor de 2 ligninger er af typen "Eq(VS,HS)". Igen skal y1(t) og y2(t) defineres som "y1=Function('y1')" og "y2=Function('y2')".
Sådan kan man fortsætte med flere dimensioner.
NB: Vigtigt at definere t som et reelt tal: "t=symbols('t',real=True)". Ellers kan reduktion være svært når der indgår komplekse tal og sin hhv. cos og ei·t hhv. e-i·t.

Løsning af differentialligninger (1. og 2. orden) og differentialligningssystem (1. orden), fuldstændig hhv. betinget løsning med Python/SymPy:
difflign.pdf eller difflign.ipynb
Uge 11 SD Links WikiPedia:
Characteristic polynomial: https://en.wikipedia.org/wiki/Characteristic_polynomial
Eigenvalues and eigenvectors of matrices: https://en.wikipedia.org/wiki/Eigenvalues_and_eigenvectors#Eigenvalues_and_eigenvectors_of_matrices
Eigenvalues and eigenfunctions of differential operators: https://en.wikipedia.org/wiki/Eigenvalues_and_eigenvectors#Eigenvalues_and_eigenfunctions_of_differential_operators
Change of basis: https://en.wikipedia.org/wiki/Change_of_basis
Diagonalizable matrix: https://en.wikipedia.org/wiki/Diagonalizable_matrix

Noter:
Ifølge theorem 11.11 er det karakteristiske polynomium uafhængig af valg af basis.
I en matrix med lutter reelle tal vil egenrummene være komplekst konjugerede, når egenværdierne er komplekst konjugerede. Det kan spare udregninger!

          Bevis: (ved konjugering)     A=λ·v ⇔ A=λ·vA=λ·v ⇔ A=λ·v     (A=A, da alle tal i A er reelle)

Lemma 11.10 viser, hvordan afbildningsmatricen ændres ved skifte af basis.
Theorem 11.23 medfører, at hvis am(λ) = 1, så er også gm(λ) = 1. Så i forbindelse med diagonalisering af matrix skal man kun undersøge gm(λ) for egenværdier λ med am(λ) ≥ 2.

Python/SymPy:
Egenværdier for A beregnes som "A.eigenvals( )", egenvektorerne beregnes som "A.eigenvects( )" og sporet som "A.trace( )".
Uge 10 SD Links WikiPedia:
Rotation matrix in 2 dimensions: https://en.wikipedia.org/wiki/Rotation_matrix#In_two_dimensions
Rotation matrix in 3 dimensions: https://en.wikipedia.org/wiki/Rotation_matrix#In_three_dimensions
Linear map: https://en.wikipedia.org/wiki/Linear_map
Kernel, image and the rank–nullity theorem: https://en.wikipedia.org/wiki/Linear_map#Kernel,_image_and_the_rank%E2%80%93nullity_theorem
List of trigonometric identities (angle sum and difference identities): https://en.wikipedia.org/wiki/List_of_trigonometric_identities#Angle_sum_and_difference_identities
Hyperbolic functions (sinh, cosh): https://en.wikipedia.org/wiki/Hyperbolic_functions#Definitions
Derivatives (sinh, cosh): https://en.wikipedia.org/wiki/Hyperbolic_functions#Derivatives

Noter:
Afbildnings- og basisskifte matricer: afb-skift.pdf
Opgaver:
Opgave 4 og opgave 6 er supervigtige!

Opgave 4: sin(t) og cos(t) er ombyttet i opgave 4b hhv. opgave 4c. Vigtigt, når man skal bestemme afbildningsmatricen!
Opgave 4c: brug formlerne fra de 2 sidste WikiPedia link ovenfor:
1) ex = sinh(x) + cosh(x) og e-x = -sinh(x) + cosh(x)
2) sinh(x) = ½·ex - ½·e-x og cosh(x) = ½·ex + ½·e-x

Opgave 6: rangen af matrix kan findes med ".rank()".
Baser i R^2: (v1, v2) kaldes delta (d), og standardbasis kaldes beta (b).
Baser i R^3: (w1, w2, w3) kaldes epsilon (e), og standardbasis kaldes gamma (g).
Tema 3 Links WikiPedia:
Ohm's law: https://en.wikipedia.org/wiki/Ohm%27s_law
Kirchhoff's circuit laws: https://en.wikipedia.org/wiki/Kirchhoff%27s_circuit_laws

Python/SymPy:
Indsæt værdier med ".subs( )", dvs. substitute. F.eks. indsætte R1=5 og R2=8 i løsning L: "L.subs({R1: 5, R2: 8})"
Uge 09 SD Links WikiPedia:
Vector space: https://en.wikipedia.org/wiki/Vector_space

Vektorrum:
Abstrakte vektorrum (geometriske, matricer, polynomier): vrum.pdf
Python beregning af matricer som vektorer: vektmatr.pdf eller vektmatr.ipynb
Uge 08 LD Links WikiPedia:
Determinant: https://en.wikipedia.org/wiki/Determinant

Matricer og determinanter:
Beregning af invers matrix og rækkeoperationer ved determinant: inv-det.pdf
Uge 08 SD Links WikiPedia:
Matrix (mathematics): https://en.wikipedia.org/wiki/Matrix_(mathematics)

Python:
Praktisk initialisering i Jupyter NoteBook dokument til opgaveregning:

NB: "sympy" og "cmath" kan lave konflikt!
NB: "dtumathtools" anvendes ikke i Mat1a.


Opgaver:
Opgave 7: Identitetsmatricen af størrelse 3 x 3 opskrives som: "I3=eye(3)".
Den sammensatte matrix skrives som: "AI3=A.row_join(I3)" eller "AI3=Matrix.hstack(A,I3)".
Den inverse matrix så udtrækkes som: "InvA=AI3.rref(pivots=False)[0:3,3:6]".
Opgave 9: Lav udvikling af determinanten efter sidste række, og brug så induktionsantagelse.
Hjem 2 Uddybning af Hjem2 opgave f: hjem2_f.pdf
Eksempler på induktionsbeviser: indukt.pdf (af Mikael Hjermitslev Hoffmann)
Uge 07 SD Links WikiPedia:
Matrix (mathematics): https://en.wikipedia.org/wiki/Matrix_(mathematics)
Row echelon form: https://en.wikipedia.org/wiki/Row_echelon_form
System of linear equations: https://en.wikipedia.org/wiki/System_of_linear_equations
Tema 2 Links WikiPedia:
Bisection method: https://en.wikipedia.org/wiki/Bisection_method
Newton's method: https://en.wikipedia.org/wiki/Newton%27s_method

Formel:
Tangentligningen: https://www.webmatematik.dk/lektioner/matematik-b/differentialregning/tangentens-ligning
Uge 06 SD Links WikiPedia:
Recursion: https://en.wikipedia.org/wiki/Recursion
Recursion (computer science): https://en.wikipedia.org/wiki/Recursion_(computer_science)
Mathematical induction: https://en.wikipedia.org/wiki/Mathematical_induction
Numerical integration: https://en.wikipedia.org/wiki/Numerical_integration
Simpson's rule: https://en.wikipedia.org/wiki/Simpson%27s_rule

Teori:
eNoten 05 mangler følgende udvidelser om induktionsbevis:
* der kan være flere startværdier, som man skal teste (f.eks. n=1 og n=2).
* induktionsantagelsen skal gælde for i ≤ n-1 (ikke blot i=n-1).
Eksempler på induktionsbeviser: indukt.pdf (af Mikael Hjermitslev Hoffmann)

Opgaver:
Opgave 9a: summen kaldes højresum for arealet.
Læs om de forskellige metoder til numerisk integation (venstresum, højresum, midtsum, trapezsum, Simpsonsum): summer.pdf
Uge 05 LD Links WikiPedia:
Hermite polynomials: https://en.wikipedia.org/wiki/Hermite_polynomials
Uge 05 SD Links WikiPedia:
Polynomial long division: https://en.wikipedia.org/wiki/Polynomial_long_division

Værktøj:
Polynomial Long Division Calculator (step by step): https://www.emathhelp.net/en/calculators/algebra-1/polynomial-long-division-calculator/
Tema 1 GeoGebra:
Afsnit IV opgave 4 kan illustreres med: tema1_part_IV_4.ggb
Afsnit IV opgave 5 kan illustreres med: tema1_part_IV_5.ggb
Uge 04 SD Links WikiPedia:
Komplekse tal: https://en.wikipedia.org/wiki/Complex_number

Opgaver:
Opgave 1d: ethvert polynomium af formen A·(z-z1)·(z-z4)·(z-B) er en løsning. Bruger man svaret fra 1b, så ved man at z3+8 er en løsning.
Opgave 2a: man kan med fordel omskrive ez = ex· ei·y , hvor det komplekse tal z = x + i·y (x og y er reelle tal).
Opgave 2a: overvej hvordan løsningerne er placeret i den komplekse plan.
Opgave 2a: bemærk at ligninger indenfor de komplekse tal kan have mange løsninger, og at man skal være meget omhyggelig ved løsning af ligningen.
Opgave 2b: start med at anvende nulreglen for et produkt.
Opgave 6b: brug lemma 4.12
Opgave 7a: brug sætningen om løsningerne til en binom ligning.
Uge 03 SD Links WikiPedia:
Komplekse tal: https://en.wikipedia.org/wiki/Complex_number

Opgaver:
I opgave 9b kan man se på de 2 muligheder for i. Da i ≠ 0 gælder enten 0 < i eller i < 0 (⇔ 0 < -i).
Brug så punkt 4 i opgave 9 på 0 < i og 0 < i (hhv. 0 < -i og 0 < -i), og opnå en modstrid!
Uge 02 SD Links WikiPedia:
Venn diagram: https://en.wikipedia.org/wiki/Venn_diagram
Kendte punkter på enhedscirklen: https://en.wikipedia.org/wiki/File:Unit_circle_angles_color.svg
Trigonometriske funktioner (f.eks. sin): https://en.wikipedia.org/wiki/Trigonometric_functions
Inverse trigonometriske funktioner (f.eks. arcsin): https://en.wikipedia.org/wiki/Inverse_trigonometric_functions
Hyperbolske funktioner (f.eks. sinh): https://en.wikipedia.org/wiki/Hyperbolic_functions
Graf over hyperbolske funktioner (f.eks. sinh): https://en.wikipedia.org/wiki/Hyperbolic_functions#/media/File%3ASinh_cosh_tanh.svg
Inverse hyperbolske funktioner (f.eks. arsinh): https://en.wikipedia.org/wiki/Hyperbolic_functions#Inverse_functions_as_logarithms

Formler:
* gradtal / 180 = radiantal / π
* injektivitet og surjektivitet for en funktion f fra A til B afhænger af 3 oplysninger: forskriften for f, mængden A, mængden B.
* Dm(f -1) = Vm(f)   og   Vm(f -1) = Dm(f)
Uge 01 SD Links WikiPedia:
Sandhedstavler: https://en.wikipedia.org/wiki/Truth_table
Logiske gates: https://en.wikipedia.org/wiki/Logic_gate

Værktøj:
Truth Table Generator (step by step): https://trutabgen.com/ (NB: findes også som app til Android og iPhone)