# timOhjeet
TimMenu static placeholder


auto_number_headings: true
heading_format:
  1: '{text}'
  2: '{h2}. {text}'
  3: '{h2}.{h3} {text}'
  4: '{h2}.{h3}.{h4} {text}'
  5: '{h2}.{h3}.{h4}.{h5} {text}'
  6: '{h2}.{h3}.{h4}.{h5}.{h6} {text}'

global_plugin_attrs:
    csPlugin:
        anonymous: true
    all:
        anonymous: true
        resetText: Reset
        #button: Save
        lang: en
        lazy: false

css: |!!
.kuvavasen img {
    display: block;
    margin: 0;
}
.kuvavasen p.caption {
    margin-left: 5em;
    margin-top: -2em;
    text-align: left;
}
span.iso {
    font-size: xx-large;
    font-weight: bold;
}
.htmlresult {
    text-align: left;
    margin-left: 1em;
}
!!

TIM and Math

Vesa Lappalainen / Faculty of Information Technology

Go to: r.jyu.fi/tmath

or show this to mobile

What is TIM?

The Interactive Material

  • TIM is an open source cloud-based platform to make interactive documents like

    • lecture notes / eBooks
    • weekly exercises
    • exams
    • manuals
    • workbook
    • discussions
    • write together and share


  • For:

    • normal lectures
    • peer instruction
    • self studying
    • MOOC
    • Flipped Classroom
    • whatever

Properties

  • mark as read (red for unread, click away, yellow for changed block)
  • lecture mode (real time questions, lecture wall)
  • correction phrases
  • comments (public/private)
  • see all answers from the user, not just the last one
  • group answering
  • automatic assessment for some task types
  • keep original and translated document in sync
  • gamification

Examples

Examples of interactions

This is examples for slow devices. One must take cursor over the task to get it open.

1. Videos

The Brachistochrone

2. Textual answers

# text1

Write what you found out about different curves when watching previous videos

 

3. Textual answers with automatic assessment

# number3
52 - 25 =

4. Return image

In a math assignment, it may be reasonable to write things to paper and return an image of that

# image2

 

5. Multiple choices

# mcq31
# Howmany
How many boxes

Open plugin

# Vaaka
Weight

Open plugin

6. Write the problem

More than asking the final result, ask the formula and let computer to do the calculations:

# sageV

Repair the calculation

Count mass of the aluminium piece that has density of \(2.7 \, \mathrm{g/cm^3}\)

V = 2 * 3 * 4 * 5

 

7. Image dragging

# prosessit3

Drag processes to correct places


# imagex172

Drag words to correct positions over the graph


# Plugin2

What forces affect the cyclist?


# vapaa1

Draw an example of a discontinuous function

8. TeX writing

One can write math by TeX:

# mp1

Task: Pythagorean theorem

Write a Pythagorean theorem using TeX syntax

$$
x = \frac {-b \pm \sqrt{b^2 - 4ac}}{2a}
$$

 

.

# writemath2

Write LaTeX-formula here

 

9. GeoGebra

10. Octave

# esim5_6

Example 5-6

num = [0 0 1]
den = [1 0.8 1]
G = tf(num,den)
nyquist(G);

 

11. Maxima

# maxima1

Maxima

integrate (1/(1+x^3), x);

 

# maxima2

Maxima and TeX-output

Use tex-function to output as TeX.

tex(integrate (1/(1+x^3), x))$

 

# maxima3

Maxima and display2d

display2d: true$
linel: 80$
1/(1+x^3);
integrate (%, x);

 

12. MathCheck by Antti Valmari

# seq1

Solve `2|x| - |x-1| = x/2 +2`

x = -2 \/ x = 2

 

13. Sage math

# sageP1

Example of derivative and integral

f = x^2+3*x-5
df = diff(f,x)
F = integrate(f,x)

 

# sageP11

Example of solution

x, a, b, c = var('x a b c')
r = solve([a*x^2 + b*x + c == 0],x)

 

# sage1

Write a function to draw

f = sin(x)
plot(f,-3,3)

 

# sage2

Press Save and drag the slider

f = sin(1/x)
@interact
def _(x2=slider(0.0001,2,default=1.0)):
    p = plot(f, (x, 0, x2))
    pretty_print(html('$f(x)\;=\;%s$'%latex(f)))
    show(p)

 

14. Embedded pages

  • TODO: This should be faund a new eaxmple.

15. JavaScript

# jsLumiukkoUusi

Task: Snowman

Try to change the position of the snowman's head.

//
  var x1 = 100;
  var y1 = 200;
  circle(ctx, x1, y1, 50);

  var x2 = x1;
  var y2 = y1 - 50 - 30;
  circle(ctx, x2, y2, 30);

  var x3 = x2 + 10;  // Change this value
  var y3 = y2 - 30 - 20;
  ctx.fillStyle = "yellow";
  circle(ctx, x3, y3, 20);

 

# vpython2

3D-grafiikka

sphere(pos=vector(4,7,3),radius=2,color=color.green)
box(pos=vector(4,2,3),size=vector(8,4,6),color=color.red)

 

# jsIntegraali

Definite Integral

 

Linear

# jsMokki1

Linear map

 

16. For smaller children

# lauseke
# jsLauseke

Try to remove parentheses and look how the result changes

 

17. Statistics

# rData1

Save data

1.28 -1.84 1.47 6.1 10.36 6.68 1.49 -1.54 4.49 3.35 -0.1 2.33
-0.92 1.75 4.48 1.99 4.73 0.88 -0.78 -0.93 -2.46 -1.18 -0.45 4.71
-1.09 1.08 4.61 1.1 6.16 1.8 -2.94 -1.95 2.17 -2.89 3.4 -0.85
-0.74 1.63 -5.28 1.56 2.24 0.77 6.66 3.69 4.4 5.26 0.4 6.35 1.49
2.62 0.3 -3.3 4.19 5.44 1.61 0.18 2.64 4.46 0.77 6.53 -4.02 4.14
-0.89 2.84 3.12 4.09 3.14 6.99 -0.44 1.64 -2.84 5.28 0.5 -1.27
-3.81 3.91 4.47 6.7 5.17 1.44 7.18 1.33 6.05 -3.36 0.45 5.49 2.21
1.48 -2.18 3.54 -2.5 3.77 1.29 0.17 5.4 2.01 8.19 2.91 1.38 1.92
-0.53 2.64 4.13 2.31 3.28 2.75 0.11 6.15

 

# sageP02
//
y <- scan("data1.dat")

 


# sageP05
//
mean(y)
var(y)

 

# sageP07
//
png()
hist(y)

 

18. GlowScript

# vpython14

3D-surface

def f(x, y):
    # Return the value of the function of x and y:
    return 0.7+0.2*cos(2*t)*sin(10*x)*cos(10*y)

p = plot3D(f, 0, 1, 0, 1, 0, 1) # function, xmin, xmax, ymin, ymax (defaults 0, 1, 0, 1, 0, 1)

 

# vpython4

A "hard-sphere" gas at 300 K

Natoms = 100  # change this to have more or fewer atoms

 

19. Java

# javagra3D

Java/Graphics 3D surface

        window.add((x,y)->sin(x)*cos(y),-2*PI,-2*PI,2*PI,2*PI);
        window.rotate(Axis.X, 50);
        window.rotate(Axis.Y, 20);

 

20. Math.js

See Math.js.

# css1

Write function to draw

1 * sin(x) + 2 * cos(x/2)

 

21. Stack

# jsxsin
# visjs3D

3D surface

    for (var x = 0; x < axisMax; x+=axisStep) {
        for (var y = 0; y < axisMax; y+=axisStep) {
            var value = (Math.sin(x/50) * Math.cos(y/50) * 50 + 50);
            data.add({id:counter++,x:x,y:y,z:value,style:value});
        }
    }

 

# jsx1

Sin(x)

 var f = 'sin(x)+1';

 

# jsx2

Oletetaan, että \(A\) on piste suoralla \(L\) ja että \(\bar v\) on suoran \(L\) suuntavektori. Yhtälö \[\overline {OP} = \overline {OA} + t \bar v\] on suoran \(L\) vektorimuotoinen parametriesitys. Tässä esiintyvä kerroin \(t\) on parametri ja vektori \(\overline {OP}\) on paikkavektori liikkuvalle pisteelle \(P\) suoralla. Alla voit kokeilla, miten \(A\):n, \(\bar v\):n ja \(t\):n muuttaminen vaikuttaa suoraan.

 //

 

# jsx3

O(n)

Säädä alla olevilla "liukureilla" x- ja y-skaalausta.

let xmax = 10;
let ymax = 10;
functions = [
{ f:(x) => x                  , c: 'red'},
{ f:(x) => 6*x                , c: 'orange'},
{ f:(x) => Math.log2(x)       , c: 'blue'},
{ f:(x) => x * Math.log2(x)   , c: 'gray'},
{ f:(x) => x * x              , c: 'blue'},
{ f:(x) => x * x * x          , c: 'green'},
{ f:(x) => Math.pow(2, x)     , c: 'red'},
];

 

# py10-4
xs = [0]*n
ys = [0]*n

for i in range(n):
    r     = x[i]**2 + y[i]**2
    xs[i] = x[i]/r
    ys[i] = y[i]/r

 

# Plugin1

Desmos x2

Open GeoGebra

 

25. Write Math

These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.