Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In
| Download
Views: 1794
Image: ubuntu2004
1
def generator():
2
t = var("t")
3
y,yp = mi_vars("y","y'")
4
t0 = randrange(-2,3)
5
y0 = randrange(-2,3)
6
field_sage,dydt = choice([
7
("sin(t+y)",sin(t+y)),
8
("cos(t+y)",cos(t+y)),
9
("y/15-t/3",y/15-t/3),
10
("t/3-y/15",t/3-y/15),
11
("sin(y/2)",sin(y/2)),
12
("cos(y/2)",cos(y/2)),
13
("t*y/9-t/3",t*y/9-t/3),
14
("t*y/9+t/3",t*y/9+t/3),
15
])
16
dt = choice([-1,1])/4
17
tn = t0
18
yn = y0
19
for _ in range(8):
20
dydtn = dydt.subs({t:tn,y:yn}).n(digits=5)
21
tn = (tn + dt).n(digits=5)
22
yn = (yn + dydtn*dt).n(digits=5)
23
24
return {
25
"field_sage": field_sage,
26
"ode": (yp==dydt),
27
"y0": y0,
28
"t0": t0,
29
"othert": t0+8*dt,
30
"othery": yn.n(digits=2),
31
}
32
33