Closed arouinfar closed 5 years ago
It's trivial to add Water to the combo box. Just add Solute.WATER
to Solute.js, then add Solute.WATER
to the list in MacroModel.js (which affects both the Macro and Micro screens). Here's the code:
// Solute.js
Solute.WATER = new Solute( Water.name, Water.pH, { stockColor: Water.color } );
// MacroModel.js
this.solutes = [
Solute.DRAIN_CLEANER,
Solute.HAND_SOAP,
Solute.BLOOD,
Solute.SPIT,
Solute.WATER,
Solute.MILK,
Solute.CHICKEN_SOUP,
Solute.COFFEE,
Solute.ORANGE_JUICE,
Solute.SODA,
Solute.VOMIT,
Solute.BATTERY_ACID
];
A few things to consider:
All of the things in the combo box are solutes, and water is the solvent. Having water as both the solvent and solute doesn't seem to break anything, but there are some quirks. Like...
In the Macro screen, when you drain all of the solution out of the beaker and add Water via the faucet, "Neutral" appears in the beaker. That doesn't currently happen when Water is selected in the combo box and the beaker autofills (I tried it). That can be changed, but there may be unknown issues.
Is it confusing to have Water in both the dropper and the faucet?
Whatever we do to pH Scale also appears in pH Scale: Basics.
Note to self about this issue:
- In the Macro screen, when you drain all of the solution out of the beaker and add Water via the faucet, "Neutral" appears in the beaker. That doesn't currently happen when Water is selected in the combo box and the beaker autofills (I tried it). That can be changed, but there may be unknown issues.
This is easily fixed. In NeutralIndicator.js, change this:
solution.pHProperty.link( function() {
self.setVisible( solution.isEquivalentToWater() );
} );
...to this:
solution.pHProperty.link( function( pH ) {
self.setVisible( pH === Water.pH );
} );
Thanks @pixelzoom.
In the Macro screen, when you drain all of the solution out of the beaker and add Water via the faucet, "Neutral" appears in the beaker. That doesn't currently happen when Water is selected in the combo box and the beaker autofills (I tried it). That can be changed, but there may be unknown issues.
This is easily fixed. In NeutralIndicator.js, change this:
Seems like you've figured out a solution to this, so let's try it out.
Is it confusing to have Water in both the dropper and the faucet?
I don't think so. Argenta found that several students explicitly looked for it in the combobox. It could also bring up a broader solute vs. solvent conversation in a classroom, which could be valuable. While water is often the solvent in a solution, it can be the solute, which is the case in high-proof alcohol (> 100 proof).
Whatever we do to pH Scale also appears in pH Scale: Basics.
Got it. I don't see why this change couldn't apply to both sims.
Can you push these changes to master so I can test it out?
@arouinfar Changes have been pushed to master and published in 1.3.0-dev.4.
@pixelzoom the behavior is looking good to me!
I can't speak to what the timeline should be for this change to get published, other than I'm fairly certain it would be somewhat low priority. When time allows, it might be nice to send this sim through QA to pick up LoL support. @kathy-phet @ariel-phet thoughts?
It's up to @ariel-phet to decide when to put ph-scale and ph-scale-basics into the QA pipeline. They should be done together.
They are ready to start RC testing at any time. There are no outstanding issues, and only 2 enhancements have been made -- see https://github.com/phetsims/ph-scale/issues and https://github.com/phetsims/ph-scale-basics/issues.
The 1.2.x release branch was first published ~11/17/2015, so it's been a long time (pre chipper 2.0?) and there are undoubtedly many common-code upgrades to be picked up, as well as LoL support.
And will also pick up LoL support.
I think probably when I get back from Japan, a fair number of things in QA right now. Tentatively plan 1st week of April @pixelzoom
Looks good in both rcs
Suggestion from Argenta, who has been using this sim in a study (emphasis added):
@kathy-phet and I think Argenta provides a pretty compelling case to include water as an option in the combobox. While it's true that students can empty the beaker and then fill it with water from the FaucetNode, it appears that few take this path. I see no real disadvantage to including water in the combobox.
For consistency, I would include add water to the combobox on both the Macro and Micro screens. Since it appears that the combobox items are ordered by pH, water would be between spit and milk.
@pixelzoom any thoughts or objections? I don't think this is a particularly time sensitive change request, so feel free to unassign for now.