phetsims / density-buoyancy-common

Common code for the Density and Buoyancy simulations
GNU General Public License v3.0
0 stars 2 forks source link

Improve support for student data collection (volume, sink/float) #82

Closed arouinfar closed 1 month ago

arouinfar commented 1 year ago

We demoed/discussed Density PhET-iO with a potential partner, and some ideas emerged from the conversation. Let's consider these ideas when work resumes on Buoyancy or when Density 1.2 becomes a priority (whichever comes first).

There isn't a good way for clients to collect volume data from a student's measurement. To measure the volume, students need to submerge the block in the pool.

@kathy-phet said on Slack:

The pedagogical conversation made think about some useful derived properties: the categorical sink/float/neutral was interesting and the volume submerged data was interesting, so you could plot volume submerged (or volume displaced) vs block volume, and see that it is linear (with different slopes for different materials).

Here are some ideas I can think of:

zepumph commented 6 months ago

As we begin working on Buoyancy again, I'll note this issue for https://github.com/phetsims/buoyancy/issues/51

AgustinVallejo commented 5 months ago

@DianaTavares do you feel we should do anything regarding this for the buoyancy publication?

DianaTavares commented 5 months ago

This is a PhET-iO, a potential partner request, and I really find it useful! Then I said, yes!

“Volume submerged” is also described here as a necessity, as well as in the teachers' feedback. I know that we discussed this in design meeting 8Feb24, and the decision was "not to display it" because KP said it is a nice exercise for students to discover/calculate it, but if it will be included in the PhET-iO, I think can be something to add in the preference to let teachers decide to show it or not.

I will bring this discussion to the next design meeting.

DianaTavares commented 5 months ago

Yes, considered this when Buoyancy go to PhET-iO design (or update for Density). This will not be included in the Buoyancy publication simulation (discussion in design meeting Feb 8, 2023).

MK: numerical vs categorical? It is not a requirement for a client at this moment. Numerical for now. KP is going to ask this client if there are more ideas about data related to this simulation.

zepumph commented 5 months ago

In the mean time, we feel that it would be valuable to include a derivedProperty for the volume submerged data. I'll see about adding that.

@kathy-phet and @arouinfar will report back from our client to see if there were any others that were important.

zepumph commented 4 months ago
zepumph commented 4 months ago
AgustinVallejo commented 4 months ago

Should we revisit moving that to Mass.ts?

@zepumph In the above commit I created a property on Mass which is updated via the model in the addPostStepListener function. So far it seems to be working correctly, and it's Tandem.OPT_OUT, it'd be good to talk about this before instrumenting.

zepumph commented 4 months ago

Excellent thanks. I'll mark this for work during PhET-iO review.

zepumph commented 1 month ago
samreid commented 1 month ago

The client can check whether a block will sink or float by comparing the densities, perhaps document this in examples.md?

(await phetioClient.invokeAsync( 'buoyancy.compareScreen.model.blockSets.sameMass.block1A.materialProperty', 'getValue' )).density;
await phetioClient.invokeAsync('buoyancy.compareScreen.model.pool.fluid.densityProperty','getValue')