This content has been marked as final. Show 378 replies
On 10/11/2006 2:36:50 AM, jmG wrote:
>To convince yourself that
>units are useless and that you
>should use work done by others
>before you , try that one:
>P*V := Z*n*R*T
>with 14 pressure bases, 10
>volume bases, 3 mole bases, 2
That's where Mathcad can cut to the chase. You don't need Uconeer or another units converter with Mathcad. The ideal gas equation will work with any combination of units from the different choices transparently.
You seem to want to go out of your way to complicate your life with a separate units conversion when Mathcad does the unit conversion transparently and without having to transfer numbers from one program to another.
One of the subtle distinction is 'Units' or 'Unity'. The former allows multiple 'Units of measure' (and hides unity) while the latter allows only the one god [or is that the 'god of 'one']. So many things in maths work out better when values are near zero(0), or one(1)!
Working in general engineering I tend to value the former to (try to) avoid Mars Lander style problems [often an assume-textbook-solve process], while JmG is a great advocate of the latter [a think-normalise-solve process]
I'm currently working on a problem where the team is using principal components analysis and didn't realise they will get different results if the distances are measured in km or um (microns) as the variance will change by 10^18 (so the leading component changes), even though the problem hasn't changed. This is a case where the units are best(?) standardised relative to the measurement noise (i.e. SNR).
I find that MathCAD's units helps catch the bugs when the need to think hasn't been realised. [see the ignoble awards for "Unskilled and Unaware of It: How Difficulties in Recognizing One�s Own Incompetence Lead to Inflated Self-Assessments,� http://www.apa.org/journals/features/psp7761121.pdf]
Each viewpoint has its advantages and disadvantages. Human falibility will continue to require as many techniques as we can muster!
What Mathcad needs:
1. NO unit system at all
2. a unit system for the natural maths (trig: �, rad, sterad ...)
What you need is :
1. express the independent domain in measured values or graphing unit
2. determine the math dimension of the task for the dependent result.
Example: measured = mV, calculated = �C
Example: B�zier point = graphing unit, arc length = graphing unit.
Units in solvers ? !
For your Odesolve, no problem. Generally as the time runs Cartesian X the response is Y displacement vs time .
What's wrong with the Mathcad universal advanced Odesolve ?
UnitOf_Graphing.mcd 14.0 K
Yes, I agree. I use Mathcad largely for physics and electronic engineering problems. I /prefer/ to use units because I think that they contribute to traceability, though I can also see assigning the units in text near the equations. I am also a programmer of many decades, and agree that we can strip the units going into a process that can't handle them. As for restoring them upon return from some process -- well, I think that that might be possible during the assignment of the return variable. But there may be functions - such as solvers - that would be in the position of accepting divers sorts of units on the input, stripping the units, and then not knowing how to apply units upon return. In that case, assigning them after the return is the only recourse. Please understand that I have very little exposure to most of Mathcad compared to many of the collabs.
I also would like to use Maple more often, but it doesn't handle equation entry as nicely as Mathcad, nor do I care at all for its handling of unit.
[Philip] ... So many things in maths work out better when values are near zero(0), or one(1)!
=> In fact, the digital computers work only in the range of 0 ... 2 in 21 digits floating point unless forced otherwise . The Pentium returns 18 "decimals" as a safe margin to the inerrant � 3 digits probable error .
That kind of "accuracy" is purely arithmetic between the *, /, +, - It does not specify the accuracy of the numerical approximation of functions as these approximations generally range much lower, for instance ln(x) ... etc. It means that ln(1.987654321) is no more 21 digits from the Pentium.
[Rich] ... I /prefer/ to use units because I think that they contribute to traceability, though I can also see assigning the units in text near the equations.
=> assign units in text ? Units are names only, you assign values to variables.
=> Units carried all the way down work sheet(s) to ease the traceability ... my opinion is just the opposite .
. Mixed units like 0.785*D(m)^2*h(ft) = something !
I call that a "glorified idiosyncrasy". No problem for the arithmetic of it but you still have to define the result in ft� or m� (or else sub of them ) .
What you don't convert beforehand you must "afterhand".
Scaling [Philip] ... that is part of the task , not to be neglected sometimes .
It reminds the Regress scaling problem in Mathcad 8 ... up to 11 .
In an ideal world, everyone will be using a single unified set of units.
The reality is that a customer will specify a 3 inch ground sample distance at 1804 meter distance. It would be absolutely asinine to not use Mathcad's built-in conversion to get the required microradians of resolution. The calculation is simple, and straightforward and does not require any additional explanation or clarification of a separate and manual unit conversion
On 10/11/2006 4:01:27 PM, jmG wrote:
>... nearly all (if not) the
>collabs with units were and
>are still in the disciplines
>of "Structural", "Civil
>Engineering" ... Maybe because
>those Engineering disciplines
>don't really involve non
>geometrical Units ?
Maybe because those disciplines, plus physics, etc are connected to the real world where we measure things with micrometers, balances, etc. And what do you mean by non-geometrical units?
If you don't need to use units in your discipline then that's fine -- no-one will tell you to. But the work a lot of us do has to use units or it is completely meaningless. If I tried to figure out what resolution I could get on the sky with an array of antennas of size 10 with a spacing of 2 and a wavelength of 3, I couldn't do it! It is only with units that it makes sense and Mathcad does that for me exactly the way I want.
I can even do the Hankel transforms with units in the integral limits and work out the beam pattern in arcminutes -- trivially. Why would I not?
... suite of :
� you advocate you can't do your job without units, then, could you or the could your profession do the job in DOS or else compiled languages that don't take units . Could you do the job in TI =59, HP-48SX ... ?
Hankel or else functions only relate the dependent domain to the independent one. Do you have to put units in mhyper(2.5,1,x) ?
I see no units in the attached Galerkin finite differences. However some collab suggested Odesolve should carry unit.
The PID Optimize (attached) starts with units and properties but by the "Harry magic" the final answer are coefficients apparently unitless but they are not as they are in "repeat per minute" .
I'm short of time to look at your antenna sheet, other collabs might find useful.
On 10/15/2006 12:36:30 PM, jmG wrote:
== assign the values to vars, use native formulas done by knowledgeable persons and append the corresponding "Unit result" . That way get rid of units in Mathcad . Any QA team will check on a independent unitless calculator . Convert beforehand not after.
In the two examples I gave, the knowledgeable persons and QA missed the units mismatches. It's that simple.
Consider what might have happened if the ground and navigation systems had both used units to quantify the data - the ground station could still have used pounds, tagged it as pounds and the navigation system would simply have converted it Newtons. X years, Y M$ and lots of peoples' lives would not have been wasted.
== Did you have a point here ?
Errare humane est.