September 2017 Update
This commit is contained in:
parent
bba7bfd280
commit
ba8067c3b7
14570 changed files with 153136 additions and 63871 deletions
25
Task/Euler-method/Zkl/euler-method.zkl
Normal file
25
Task/Euler-method/Zkl/euler-method.zkl
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
const FMT=" %7.3f";
|
||||
|
||||
fcn ivp_euler(f,y,step,end_t){
|
||||
print(" Step %2d: ".fmt(step));
|
||||
foreach t in ([0..end_t,step]){
|
||||
if (t % 10 == 0) print(FMT.fmt(y));
|
||||
y += f(t,y) * step;
|
||||
}
|
||||
println();
|
||||
}
|
||||
|
||||
fcn analytic{
|
||||
print(" Time: ");
|
||||
foreach t in ([0..100,10]){ print(" %7g".fmt(t)) }
|
||||
print("\nAnalytic: ");
|
||||
foreach t in ([0..100,10]){ print(FMT.fmt(20.0 + 80.0 * (-0.07 * t).exp())) }
|
||||
println();
|
||||
}
|
||||
|
||||
fcn cooling(_,temp){ return(-0.07 * (temp - 20)) }
|
||||
|
||||
analytic();
|
||||
ivp_euler(cooling, 100.0, 2, 100);
|
||||
ivp_euler(cooling, 100.0, 5, 100);
|
||||
ivp_euler(cooling, 100.0, 10, 100);
|
||||
Loading…
Add table
Add a link
Reference in a new issue