$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Matthias Troyer (troyer_at_[hidden])
Date: 2006-08-20 08:28:59
On Aug 20, 2006, at 10:42 AM, Andy Little wrote:
>
> "Janek Kozicki" <janek_listy_at_[hidden]> wrote in message
> news:20060819212430.739b0920_at_absurd...
>> Andy Little said:     (by the date of Sat, 19 Aug 2006 13:03:42  
>> +0100)
>>
>>> In fact there is a 2D and 3d vector in quan so you can do:
>>>
>>> quan::some_vect< quan::length:: m > position_a, position_b;
>>>
>>> quan::length:: m  distance_a_to_b  = magnitude(position_b -  
>>> position_a);
>>>
>>> Because of that useage It might get confusing.
>>
>> I still hold my position that linear algerbra library should not be a
>> part of _two_ separate libraries: Dimensions and Units.
>
> FWIW I brought this up only in relation to magnitude. That said, I  
> have found
> that being able to write code like the above is a lot of fun, much  
> more so than
> if I was using  doubles to represent lengths. However suddenly you are
> restricted in what you can do. For example:
>
> double var1= 10;    // var1  meters
> double var2 = 10 ;    // var2 represents meters.
>
> var1 *= var2 ;        // var1 now represents an area in square meters.
>
> Of course you cant do this  with a fixed_quantity:
>
> quan::length::m var1(10);
> quan::length::m var2(10);
> var1 *= var2 ;                         // Error
>
>
> I would guess that is an unacceptable restriction for many authors  
> of algebra
> libraries.
Why should this be an unacceptable restriction? All it says is that a  
quantity with units is not a field, but that is obvious from the  
start. I can multiply a vector (3m, 2m, 1m) by a factor of 5 but not  
by a factor of 5m. I see no problem here at all, except if you assume  
that the element type of a vector is the same type as the scalar  
factor in your expression.
> As far as I am concerned though I am more interested to see what  
> happens if I do
> play by the rules that are imposed by having strongly typed  
> quantities, but it
> is kind of difficult to ask everyone to play by these rules, so I  
> am happy to
> create vector types myself, that work with Quan.
I don't see any reason why a correctly designed linera algebra  
library should not work with quantities with units
>
> Maybe, if we can get Quan into Boost then we will be in a stronger  
> position and
> there may then be interest in creating a linear generic algebra  
> library for
> physical quantities, but I suspect that due to the above kind of  
> issues, there
> will always be a great divide between a 'raw' linear algebra  
> library and one
> that is designed to work with physical quantities.
  I don't agree. For me there is no such thing as 'raw' linear  
algebra. All linear algebra concepts work perfectly with quantities  
with units.
matthias