- This topic has 20 replies, 2 voices, and was last updated 9 years ago by
Ian Lawrence.
-
AuthorPosts
-
-
5 April 2012 at 15:31 #27955
Hi – I’m going to play about with the following software:
- modellus – http://modellus.fct.unl.pt/
- geogebra – http://www.geogebra.org/cms/
- Algodoo – http://www.algodoo.com/wiki/Algodoo_Play
- VnR – https://www.box.net/shared/static/akg8e4roko.zip
This is prompted by a physics specialist I support asking the best way to teach a topic that includes an equation, such as speed. So I’m looking for something that would be accessible for 14 year-olds (year 10) of all abilities, and would support their understanding of both the physics and the maths. This partly came from a discussion a while ago about equation triangles: https://www.talkphysics.org/mod/groups/topicposts.php?topic=35694&group_guid=13617 .
Anyone want to join me? Any other software to suggest trying out?
-
10 April 2012 at 10:36 #27956
Depends on whether you want
a) intuition developing – so simulations-> Algodoo, or want to model – that is being able to write the rules of your imagined world…
b) assume or hope to develop algebraic competence – >Modellus
c) pre-algebra, but semi-quantiative -> VnR
For this target audience you ought o also consider StarLogo, or Scratch. More to follow on both.
Geogebra is focussed on constraint relationships, rather than time-evolution, so I guess best not used here…
-
28 May 2013 at 10:17 #27957
This seems a good place to start a conversation about the upcoming Rugby workshop…so I’ll do that.
-
28 May 2013 at 10:18 #27958
Here are a few models, in case we get stuck.
-
28 May 2013 at 10:19 #27960
Rubgy Workshop 2013 – descriptor
# Computational modelling workshop
Learning physics is quite hard, yet physics is rather simple.
We ask children to:
- Imagine challengingly simple worlds into existence.
- Express the rules that govern these worlds explicitly.
- Notice how the worlds evolve.
- Compare the lived-in world with these imagined worlds.
Creating explicit computational models with children provides resources to support each of these phases, so lightening the load.
Wider benefits include creating intellectually valuable entities and insights into the essential limitations of modelled forecasts.
In the workshop you will:
- Select building blocks for particular tasks
- Construct models from these blocks
- Evaluate the models and the opportunities
I’ll be open to continuing the conversation on TalkPhysics.
-
28 May 2013 at 10:19 #27961
So here I am…conversing with myslef, as ever
-
28 May 2013 at 10:22 #27962
Programming And Modelling
BCS national curriculum demands…
Design and write programs that include
o Sequencing: doing one step after another.
o Selection (if-then-else): doing either one thing or another.
o Repetition (Iterative loops or recursion).
o Language constructs that support abstraction: wrapping up a computation in a named abstraction, so that it can be re-used. (The most common form of abstraction is the notion of a “procedure” or “function” with parameters.)
o Some form of interaction with the program’s environment, such as input/output, or event-based programming.
Find and correct errors in their code.
Pretty much all of these are naturally a part of modelling.
-
28 May 2013 at 10:23 #27963
However, this is not quite the kind of thing?
Newtoncooling Lua
Lua
T0 = 100
TR = 20
k = 0.07
delta_t = 2, 5, 10
n = 100
NewtonCooling = function( t ) return -k * ( t – TR ) end
function Euler( f, y0, n, h )
local y = y0
for x = 0, n, h do
print( “”, x, y )
y = y + h * f( y )
end
end
for i = 1, #delta_t do
print( "delta_t = ", delta_t[i] )
Euler( NewtonCooling, T0, n, delta_t[i] )
end
-
29 May 2013 at 12:24 #27964
Javascript would seem to be commonly available, and a runner:
You could have the core of a model like this, which looks more or less intelligible:
var force;
var mass;
var acceleration;
var position;
var velocity;
var timeonClock;
var timeInterval;
function accumulate(AccumulatorValue,QuantityValue)
{
return QuantityValue = QuantityValue + AccumulatorValue*timeInterval;
}
// set initial values
force = 3;
mass = 5;
timeInterval = 0.01;
position = 0;
velocity = 0;
timeonClock = 0;
WallLocation = 7;
// find acceleration
acceleration = force/mass;
// set condition
while (position<=WallLocation){
// do the accumulations
timeonClock = accumulate(timeInterval, timeonClock)
velocity = accumulate(acceleration, velocity)
position = accumulate(velocity, position)
// store these results
PlotThis+= AddPoints(timeonClock,position);
}
-
29 May 2013 at 12:27 #27965
The difficulty is that none of the charting functions commonly available seem to be easily tweakable[1] to operate with computed data – they rather assume that the data exists in the data table at the time of the interpretation of the document – otherwise we’d have a modelling environment in every javascript-enabled browser…
[1] That is, to seems likely that you’d have to write the data out to a file and then read it in again….
-
29 May 2013 at 12:33 #27966
The code generates a datatable, which can then be pasted into a web page, resulting in:
<iframe name=”SPTframe” src=”https://dl.dropboxusercontent.com/u/11977706/ModellingTrials/chartfromlocaldatatable6.html” frameborder=”0″ scrolling=”yes” width=”680″ height=”506″ marginwidth=”0″ marginheight=”0″ ></iframe>
-
29 May 2013 at 12:34 #27967
-
29 May 2013 at 12:37 #27968
Or you can put things into the nearly-great jsfiddle:
-
29 May 2013 at 12:37 #27969
Which works fine for data-tables, but not for computed data – something to do with the DOM….
-
29 May 2013 at 12:39 #27970
And of course, you can simulate on the Canvas, it being HTNML5:
-
29 May 2013 at 12:40 #27971
So I suppose we could hack out a graph from primitives on the Canvas…but that rather depends on people being interested in doing modelling…using Javascript. Is it intelligible enough? Helpful to make the link with coding?
-
29 May 2013 at 12:42 #27972
As here is the BCS suggestion for coding:
BCS national curriculum demands…
Design and write programs that include
o Sequencing: doing one step after another.
o Selection (if-then-else): doing either one thing or another.
o Repetition (Iterative loops or recursion).
o Language constructs that support abstraction: wrapping up a computation in a named abstraction, so that it can be re-used. (The most common form of abstraction is the notion of a “procedure” or “function” with parameters.)
o Some form of interaction with the program’s environment, such as input/output, or event-based programming.
Find and correct errors in their code.
Pretty much all of these are naturally a part of modelling.
-
29 May 2013 at 12:48 #27973
maybe what’s needed is a way of keeping what we’re doing in focus… however its implemented:
-
29 May 2013 at 12:52 #27975
Effectively a guide for action. And this could be assembled from sub-bits, all of which are tested (Physics as bricolage: aka physics is simple – we keep on using the same bits over and over).
In fact the mapping from this to the Javascript model, embedded above, looks rather direct…
So sequencing, abstraction, repetition, decision-making..not so hot on the event-based input for this model.
-
29 May 2013 at 17:14 #27976
Hi Ian – sorry, I’d opted to take a step back from this when I realised how much I’d taken on with the evidence-based teaching stuff for the IOP National Teachers CPD Conference 2013.
I tried to take a look at your attached models above (modelsforrugby.zip), but I’m blocked from accessing zip files whilst in the IOP offices. Which software are they for, or are they for a range of the software you mention above?
-
29 May 2013 at 17:45 #27977
Well, rather than starting a new group(!) I’ve started a conversation with myself ahead of the Rugby meeting in June, where I’ve got asked to run a workshop on modelling. The plan is to continue the conversation here after that event.
A pair of models is for VnR and a pair for Modellus, but there’s nothing very clever there – they’re just as a bit of scaffolding, in case….
-
-
AuthorPosts
You must be logged in to reply to this topic.