I'm posting on the list to ask for help in the *design* of these features. I'm not asking for help writing code, I'll do that! What I do need is some advice from people who regularly teach mathematics with units. E.g. science and engineering.
The current basic behaviour, with some example feedback is shown below. I really could use a lot more test cases, particularly from physics and chemistry where there are a variety of units. Please email me with comments, and examples to C.J.S...@ed.ac.uk.
In parallel to this there are a number of other things going on, including "reasoning by equivalence" which I've mentioned before. I've been asked about support for scientific units for some time, so this seemed worthwhile releasing as an increment sooner.
The *logic* is to have multiplication. The *interface* for students might insert it quietly for them. Also, the default behaviour is to forbid floats, which makes no sense for units. The teacher will need to change this.
One immediate thing, answer notes such as "ATUnits_compatible_units" are never shown to students. These are for statistical purposes internally for the teacher. The student only gets to see what is in the *feedback* column. I think it is useful to be able to find answers which needed conversion, so I think this will remain.
"cups" and "miles"! Really? I thought you guys were inching towards the metric system..... More seriously, I'll have to give some thought to localisation of units to allow (or not) imperial and metric.
Sorry for the confusion on the answer note. I meant more that the feedback that goes along with it shouldn't be shown. So that would be when a students answers 25g and I've entered 0.025kg then it should NOT show "Your units are different from those used by the teacher, but are compatible with them. Numerical values are being converted to SI base units for comparison." That's just extra information that will only confuse the students. So leave the answer note in but take the feedback out.
I wish we were "inching" toward the metric system... but by God we're 'Murica and we do it best.... Sigh. Shoot me. In all seriousness, I do use the customary units all the time at the beginning of the course because all of my high school kids are far more familiar with them than metric units and it makes it easier on them to see how to use factor label to convert units. Of course they all go away after the beginning of the course. I actually had a physics professor in college who gave us one problem with a velocity in furlongs per fortnight just to screw with us though.
Thanks to you and Matti for working on this. I have not had a chance to test it yet, but this a huge thing in the physical sciences. I would characterize them less as 'teaching mathematics with units' as teaching students to understand units with mathematics. I would normally give more partial credit to a student for correct units than a correct number. Sometimes nonstandard units are helpful with that like furlongs/light year or drams per cubic parsec. It would be great if unit conversion tables were extensible.
As far as interface it might be simpler to provide two inputs one numerical and one for units. The dimensionality of the units could be tested, and a conversion factor applied to the numeric answer. The box itself would provide a hint to the student to think about units.
Agreed, but actually this was a very poorly chosen example on my part! The option [3,2] means, check the answer is to 3 sig figs, only two of which need to agree. So these options are accurate. If you give ans answer something like 13.45*m/s then the feedback is "Your answer contains the wrong number of significant digits. The accuracy of your answer is not correct...."
Joshua said "There are times where we have quantities that are unitless (pH, equilibrium constants) that it would be nice if everything looked the same to students and it would be able to give appropriate feedback if they put in units that they were not supposed to include."
So far STACK hasn't enabled teachers to award partial credit through the answer tests, and I'm very nervous about starting to do so now. This is the job of the Potential Response trees. There is already a function which splits up the student's answer into a list
"There are times when my questions ask for specific units because I want to make sure that students are clear on the unit conversions themselves. Requiring specific units and disallowing SI prefix conversions in the answer tests should be a feature."
I think this should work, and will leave sensible notes for later analysis. We could add an option to the answertest, but that is akward as I've already used the answer test options field for the numerical accuracy.
Okay Chris I have my test server loaded now and can see a little more what you are doing. You are correct that by using two different boxes a teacher should be able to sort out equivalence of differing unit systems through the potential response trees. This already possible by treating units as variables and doing algebraic equivalence tests.
As it appears to me now you are really attempting to make a simpler way for science teachers to make comparisons of units as STACK does using scientific notation. If this is your goal, then restricting your efforts to the common SI units is probably worthwhile and sufficient (as much fun as converting cubits to barleycorn might be). There are a lot of units in science that this approach would not fit. in addition to pH, there are temperature (Celsius, Fahrenheit, Kelvin), pressure, decibels, foot candles etc. in which simple proportionality is not the appropriate conversion method.
At the moment I do not understand some of the feedback. If a teacher provides 10 kg as the model answer and the student answers 100 g. I would think the units are correct in the students response (mass), but that the calculation is off by two orders of magnitude. I think that the feedback you are providing would say that the units are 'compatible', but different.
I've had a very productive day and I've commited a basic units input type for use with SI units. It is amazing what you can do when you have the design in hand. Thanks for all the advice. Please can I ask people to test this?
(3) When this code has been tested I'll implement a second answer test which does not check for compatibility of units. So eventually we will have a number of units answer tests just as we do with the numerical tests.
(5) Currently there are a large number of expressions which students are not permitted to type in. E.g. "ohm" and any prefix, like "kohm". This is because students are only *permitted* to type in some things and I've not got time to add them all in today.
I'm really going to need some help in testing and developing from here onwards. I actually don't teach maths with units. I've been motivated to implement these features because I know how many people have asked for them, including colleagues here in Edinburgh in Chemistry.
(4) If we're talking about measurements or calculated values then I think the answer is a pretty clear no to things like sin(4). With that being said, I could see someone wanting an angle to be expressed in terms of pi.
Just for reference for when I'm working on this, I'm assuming that STACK can handle joining different types of units together and converting them independently so that as long as there are conversions between s and min then I wouldn't need to cover units like M/s vs M/min. Is that a good assumption?
Well, we are now at a point, I think, where students can reasonably use the units interface with a wide range of SI units. I'd really like some people to test the code at this point and let me know what they think, and what they need.
I've done some very quick testing at this point and I've had a little bit of a problem with the Strict Syntax setting. I have "Insert starts for implied multiplication" set. If I have strict syntax set to Yes then it requires me to write in 9.44*g to get a valid answer. 9.44g shows up as an invalid answer. Now, if I switch Strict Syntax to No then it mangles 9.44E0g and interprets it as 9.44*E*0*g.
Something I should have mentioned before: Technically, the answer here 9.44g should be written as 9.44 g. STACK rejects that as invalid because of the space. Could the unit answer type be made to silently strip out spaces between numbers and units?
I would say the "fullname" for K should be Kelvin not "degree absolute". Its also my understanding that Kelvin should never have a degree symbol on it as in your TeX since it is not a relative temperature but an absolute one. (74)
The capitalization of some of the units needs to be checked. The rule is that anything named for a person needs to be capitalized while everything else shouldn't be. So amu (103), mmHg (104), atm (107) should have their full names not capitalized. On the other hand, Torr (108) is derived from Torricelli and should be capitalized always. Well I just double checked that, and I'm wrong... Torr is capitalized as a unit but the name is lowercase. So much for standards... This is the reverse of what you have.
On (119) you're calling amu a synonym for atom. That's not correct. The correct idea here would go something like, I have 1 carbon atom that has a mass of 12.01amu (on average) and so 5 carbon atoms have an average mass of 60.05amu. Synonyms for amu would be a Dalton. Also technically, the unit for amu is u although most people don't use that. (103)
The maximum safe pressure that a certain 4.00 L container can withstand is 3.50 atm. If the container is filled with 0.410 mol of gas, then what is the maximum temperature in Celsius that the container can withstand?
Sure, there are things like psig and psia which are psi gauge and psi actual. That actually got one chemist in trouble when he forgot this during the Deflategate controversy last year in the NFL. But that's not a common issue that really shows up in the normal course of events in chemistry at least. Probably why the chemist in the media forgot about it. I've never seen versions like this for any of the SI (or similar) units. So I've never seen anything expressed as a gauge kPa. I think this one is safe to ignore in my experience. Units like this (psig and psia) are really just psi in any case.
795a8134c1