Boost logo

Boost-Commit :

From: boost_at_[hidden]
Date: 2008-05-20 23:59:22


Author: matthiasschabel
Date: 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
New Revision: 45593
URL: http://svn.boost.org/trac/boost/changeset/45593

Log:
refactor physical dimensions out of SI electromagnetic units into separate physical_dimensions headers

fix namespace issue in examples/quaternion.cpp
Added:
   sandbox/units/boost/units/physical_dimensions/capacitance.hpp (contents, props changed)
   sandbox/units/boost/units/physical_dimensions/conductance.hpp (contents, props changed)
   sandbox/units/boost/units/physical_dimensions/conductivity.hpp (contents, props changed)
   sandbox/units/boost/units/physical_dimensions/electric_charge.hpp (contents, props changed)
   sandbox/units/boost/units/physical_dimensions/electric_potential.hpp (contents, props changed)
   sandbox/units/boost/units/physical_dimensions/impedance.hpp (contents, props changed)
   sandbox/units/boost/units/physical_dimensions/inductance.hpp (contents, props changed)
   sandbox/units/boost/units/physical_dimensions/magnetic_field_intensity.hpp (contents, props changed)
   sandbox/units/boost/units/physical_dimensions/magnetic_flux.hpp (contents, props changed)
   sandbox/units/boost/units/physical_dimensions/magnetic_flux_density.hpp (contents, props changed)
   sandbox/units/boost/units/physical_dimensions/permeability.hpp (contents, props changed)
   sandbox/units/boost/units/physical_dimensions/permittivity.hpp (contents, props changed)
   sandbox/units/boost/units/physical_dimensions/reluctance.hpp (contents, props changed)
   sandbox/units/boost/units/physical_dimensions/resistance.hpp (contents, props changed)
   sandbox/units/boost/units/physical_dimensions/resistivity.hpp (contents, props changed)
Text files modified:
   sandbox/units/boost/units/systems/si/base.hpp | 4 ++--
   sandbox/units/boost/units/systems/si/capacitance.hpp | 7 ++-----
   sandbox/units/boost/units/systems/si/conductance.hpp | 7 ++-----
   sandbox/units/boost/units/systems/si/conductivity.hpp | 9 +++------
   sandbox/units/boost/units/systems/si/electric_charge.hpp | 9 +++------
   sandbox/units/boost/units/systems/si/electric_potential.hpp | 7 ++-----
   sandbox/units/boost/units/systems/si/impedance.hpp | 7 ++-----
   sandbox/units/boost/units/systems/si/inductance.hpp | 7 ++-----
   sandbox/units/boost/units/systems/si/magnetic_field_intensity.hpp | 9 +++------
   sandbox/units/boost/units/systems/si/magnetic_flux.hpp | 7 ++-----
   sandbox/units/boost/units/systems/si/magnetic_flux_density.hpp | 7 ++-----
   sandbox/units/boost/units/systems/si/permeability.hpp | 7 ++-----
   sandbox/units/boost/units/systems/si/permittivity.hpp | 7 ++-----
   sandbox/units/boost/units/systems/si/reluctance.hpp | 7 ++-----
   sandbox/units/boost/units/systems/si/resistance.hpp | 7 ++-----
   sandbox/units/boost/units/systems/si/resistivity.hpp | 7 ++-----
   sandbox/units/libs/units/example/quaternion.cpp | 2 +-
   17 files changed, 36 insertions(+), 81 deletions(-)

Added: sandbox/units/boost/units/physical_dimensions/capacitance.hpp
==============================================================================
--- (empty file)
+++ sandbox/units/boost/units/physical_dimensions/capacitance.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -0,0 +1,34 @@
+// Boost.Units - A C++ library for zero-overhead dimensional analysis and
+// unit/quantity manipulation and conversion
+//
+// Copyright (C) 2003-2008 Matthias Christian Schabel
+// Copyright (C) 2008 Steven Watanabe
+//
+// Distributed under the Boost Software License, Version 1.0. (See
+// accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_UNITS_CAPACITANCE_DERIVED_DIMENSION_HPP
+#define BOOST_UNITS_CAPACITANCE_DERIVED_DIMENSION_HPP
+
+#include <boost/units/derived_dimension.hpp>
+#include <boost/units/physical_dimensions/length.hpp>
+#include <boost/units/physical_dimensions/mass.hpp>
+#include <boost/units/physical_dimensions/time.hpp>
+#include <boost/units/physical_dimensions/current.hpp>
+
+namespace boost {
+
+namespace units {
+
+/// derived dimension for capacitance : L^-2 M^-1 T^4 I^2
+typedef derived_dimension<length_base_dimension,-2,
+ mass_base_dimension,-1,
+ time_base_dimension,4,
+ current_base_dimension,2>::type capacitance_type;
+
+} // namespace units
+
+} // namespace boost
+
+#endif // BOOST_UNITS_CAPACITANCE_DERIVED_DIMENSION_HPP

Added: sandbox/units/boost/units/physical_dimensions/conductance.hpp
==============================================================================
--- (empty file)
+++ sandbox/units/boost/units/physical_dimensions/conductance.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -0,0 +1,34 @@
+// Boost.Units - A C++ library for zero-overhead dimensional analysis and
+// unit/quantity manipulation and conversion
+//
+// Copyright (C) 2003-2008 Matthias Christian Schabel
+// Copyright (C) 2008 Steven Watanabe
+//
+// Distributed under the Boost Software License, Version 1.0. (See
+// accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_UNITS_CONDUCTANCE_DERIVED_DIMENSION_HPP
+#define BOOST_UNITS_CONDUCTANCE_DERIVED_DIMENSION_HPP
+
+#include <boost/units/derived_dimension.hpp>
+#include <boost/units/physical_dimensions/length.hpp>
+#include <boost/units/physical_dimensions/mass.hpp>
+#include <boost/units/physical_dimensions/time.hpp>
+#include <boost/units/physical_dimensions/current.hpp>
+
+namespace boost {
+
+namespace units {
+
+/// derived dimension for conductance : L^-2 M^-1 T^3 I^2
+typedef derived_dimension<length_base_dimension,-2,
+ mass_base_dimension,-1,
+ time_base_dimension,3,
+ current_base_dimension,2>::type conductance_type;
+
+} // namespace units
+
+} // namespace boost
+
+#endif // BOOST_UNITS_CONDUCTANCE_DERIVED_DIMENSION_HPP

Added: sandbox/units/boost/units/physical_dimensions/conductivity.hpp
==============================================================================
--- (empty file)
+++ sandbox/units/boost/units/physical_dimensions/conductivity.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -0,0 +1,34 @@
+// Boost.Units - A C++ library for zero-overhead dimensional analysis and
+// unit/quantity manipulation and conversion
+//
+// Copyright (C) 2003-2008 Matthias Christian Schabel
+// Copyright (C) 2008 Steven Watanabe
+//
+// Distributed under the Boost Software License, Version 1.0. (See
+// accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_UNITS_CONDUCTIVITY_DERIVED_DIMENSION_HPP
+#define BOOST_UNITS_CONDUCTIVITY_DERIVED_DIMENSION_HPP
+
+#include <boost/units/derived_dimension.hpp>
+#include <boost/units/physical_dimensions/length.hpp>
+#include <boost/units/physical_dimensions/mass.hpp>
+#include <boost/units/physical_dimensions/time.hpp>
+#include <boost/units/physical_dimensions/current.hpp>
+
+namespace boost {
+
+namespace units {
+
+/// derived dimension for conductivity : L^-3 M^-1 T^3 I^2
+typedef derived_dimension<length_base_dimension,-3,
+ mass_base_dimension,-1,
+ time_base_dimension,3,
+ current_base_dimension,2>::type conductivity_type;
+
+} // namespace units
+
+} // namespace boost
+
+#endif // BOOST_UNITS_CONDUCTIVITY_DERIVED_DIMENSION_HPP

Added: sandbox/units/boost/units/physical_dimensions/electric_charge.hpp
==============================================================================
--- (empty file)
+++ sandbox/units/boost/units/physical_dimensions/electric_charge.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -0,0 +1,30 @@
+// Boost.Units - A C++ library for zero-overhead dimensional analysis and
+// unit/quantity manipulation and conversion
+//
+// Copyright (C) 2003-2008 Matthias Christian Schabel
+// Copyright (C) 2008 Steven Watanabe
+//
+// Distributed under the Boost Software License, Version 1.0. (See
+// accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_UNITS_ELECTRIC_CHARGE_DERIVED_DIMENSION_HPP
+#define BOOST_UNITS_ELECTRIC_CHARGE_DERIVED_DIMENSION_HPP
+
+#include <boost/units/derived_dimension.hpp>
+#include <boost/units/physical_dimensions/time.hpp>
+#include <boost/units/physical_dimensions/current.hpp>
+
+namespace boost {
+
+namespace units {
+
+/// derived dimension for electric charge : T^1 I^1
+typedef derived_dimension<time_base_dimension,1,
+ current_base_dimension,1>::type electric_charge_type;
+
+} // namespace units
+
+} // namespace boost
+
+#endif // BOOST_UNITS_ELECTRIC_CHARGE_DERIVED_DIMENSION_HPP

Added: sandbox/units/boost/units/physical_dimensions/electric_potential.hpp
==============================================================================
--- (empty file)
+++ sandbox/units/boost/units/physical_dimensions/electric_potential.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -0,0 +1,34 @@
+// Boost.Units - A C++ library for zero-overhead dimensional analysis and
+// unit/quantity manipulation and conversion
+//
+// Copyright (C) 2003-2008 Matthias Christian Schabel
+// Copyright (C) 2008 Steven Watanabe
+//
+// Distributed under the Boost Software License, Version 1.0. (See
+// accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_UNITS_ELECTRIC_POTENTIAL_DERIVED_DIMENSION_HPP
+#define BOOST_UNITS_ELECTRIC_POTENTIAL_DERIVED_DIMENSION_HPP
+
+#include <boost/units/derived_dimension.hpp>
+#include <boost/units/physical_dimensions/length.hpp>
+#include <boost/units/physical_dimensions/mass.hpp>
+#include <boost/units/physical_dimensions/time.hpp>
+#include <boost/units/physical_dimensions/current.hpp>
+
+namespace boost {
+
+namespace units {
+
+/// derived dimension for electric potential : L^2 M T^-3 I^-1
+typedef derived_dimension<length_base_dimension,2,
+ mass_base_dimension,1,
+ time_base_dimension,-3,
+ current_base_dimension,-1>::type electric_potential_type;
+
+} // namespace units
+
+} // namespace boost
+
+#endif // BOOST_UNITS_ELECTRIC_POTENTIAL_DERIVED_DIMENSION_HPP

Added: sandbox/units/boost/units/physical_dimensions/impedance.hpp
==============================================================================
--- (empty file)
+++ sandbox/units/boost/units/physical_dimensions/impedance.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -0,0 +1,34 @@
+// Boost.Units - A C++ library for zero-overhead dimensional analysis and
+// unit/quantity manipulation and conversion
+//
+// Copyright (C) 2003-2008 Matthias Christian Schabel
+// Copyright (C) 2008 Steven Watanabe
+//
+// Distributed under the Boost Software License, Version 1.0. (See
+// accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_UNITS_IMPEDANCE_DERIVED_DIMENSION_HPP
+#define BOOST_UNITS_IMPEDANCE_DERIVED_DIMENSION_HPP
+
+#include <boost/units/derived_dimension.hpp>
+#include <boost/units/physical_dimensions/length.hpp>
+#include <boost/units/physical_dimensions/mass.hpp>
+#include <boost/units/physical_dimensions/time.hpp>
+#include <boost/units/physical_dimensions/current.hpp>
+
+namespace boost {
+
+namespace units {
+
+/// derived dimension for impedance : L^2 M T^-3 I^-2
+typedef derived_dimension<length_base_dimension,2,
+ mass_base_dimension,1,
+ time_base_dimension,-3,
+ current_base_dimension,-2>::type impedance_type;
+
+} // namespace units
+
+} // namespace boost
+
+#endif // BOOST_UNITS_IMPEDANCE_DERIVED_DIMENSION_HPP

Added: sandbox/units/boost/units/physical_dimensions/inductance.hpp
==============================================================================
--- (empty file)
+++ sandbox/units/boost/units/physical_dimensions/inductance.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -0,0 +1,34 @@
+// Boost.Units - A C++ library for zero-overhead dimensional analysis and
+// unit/quantity manipulation and conversion
+//
+// Copyright (C) 2003-2008 Matthias Christian Schabel
+// Copyright (C) 2008 Steven Watanabe
+//
+// Distributed under the Boost Software License, Version 1.0. (See
+// accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_UNITS_INDUCTANCE_DERIVED_DIMENSION_HPP
+#define BOOST_UNITS_INDUCTANCE_DERIVED_DIMENSION_HPP
+
+#include <boost/units/derived_dimension.hpp>
+#include <boost/units/physical_dimensions/length.hpp>
+#include <boost/units/physical_dimensions/mass.hpp>
+#include <boost/units/physical_dimensions/time.hpp>
+#include <boost/units/physical_dimensions/current.hpp>
+
+namespace boost {
+
+namespace units {
+
+/// derived dimension for inductance : L^2 M T^-2 I^-2
+typedef derived_dimension<length_base_dimension,2,
+ mass_base_dimension,1,
+ time_base_dimension,-2,
+ current_base_dimension,-2>::type inductance_type;
+
+} // namespace units
+
+} // namespace boost
+
+#endif // BOOST_UNITS_INDUCTANCE_DERIVED_DIMENSION_HPP

Added: sandbox/units/boost/units/physical_dimensions/magnetic_field_intensity.hpp
==============================================================================
--- (empty file)
+++ sandbox/units/boost/units/physical_dimensions/magnetic_field_intensity.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -0,0 +1,30 @@
+// Boost.Units - A C++ library for zero-overhead dimensional analysis and
+// unit/quantity manipulation and conversion
+//
+// Copyright (C) 2003-2008 Matthias Christian Schabel
+// Copyright (C) 2008 Steven Watanabe
+//
+// Distributed under the Boost Software License, Version 1.0. (See
+// accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_UNITS_MAGNETIC_FIELD_INTENSITY_DERIVED_DIMENSION_HPP
+#define BOOST_UNITS_MAGNETIC_FIELD_INTENSITY_DERIVED_DIMENSION_HPP
+
+#include <boost/units/derived_dimension.hpp>
+#include <boost/units/physical_dimensions/length.hpp>
+#include <boost/units/physical_dimensions/current.hpp>
+
+namespace boost {
+
+namespace units {
+
+/// derived dimension for magnetic field intensity : L^-1 I
+typedef derived_dimension<length_base_dimension,-1,
+ current_base_dimension,1>::type magnetic_field_intensity_type;
+
+} // namespace units
+
+} // namespace boost
+
+#endif // BOOST_UNITS_MAGNETIC_FIELD_INTENSITY_DERIVED_DIMENSION_HPP

Added: sandbox/units/boost/units/physical_dimensions/magnetic_flux.hpp
==============================================================================
--- (empty file)
+++ sandbox/units/boost/units/physical_dimensions/magnetic_flux.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -0,0 +1,34 @@
+// Boost.Units - A C++ library for zero-overhead dimensional analysis and
+// unit/quantity manipulation and conversion
+//
+// Copyright (C) 2003-2008 Matthias Christian Schabel
+// Copyright (C) 2008 Steven Watanabe
+//
+// Distributed under the Boost Software License, Version 1.0. (See
+// accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_UNITS_MAGNETIC_FLUX_DERIVED_DIMENSION_HPP
+#define BOOST_UNITS_MAGNETIC_FLUX_DERIVED_DIMENSION_HPP
+
+#include <boost/units/derived_dimension.hpp>
+#include <boost/units/physical_dimensions/length.hpp>
+#include <boost/units/physical_dimensions/mass.hpp>
+#include <boost/units/physical_dimensions/time.hpp>
+#include <boost/units/physical_dimensions/current.hpp>
+
+namespace boost {
+
+namespace units {
+
+/// derived dimension for magnetic flux : L^2 M T^-2 I^-1
+typedef derived_dimension<length_base_dimension,2,
+ mass_base_dimension,1,
+ time_base_dimension,-2,
+ current_base_dimension,-1>::type magnetic_flux_type;
+
+} // namespace units
+
+} // namespace boost
+
+#endif // BOOST_UNITS_MAGNETIC_FLUX_DERIVED_DIMENSION_HPP

Added: sandbox/units/boost/units/physical_dimensions/magnetic_flux_density.hpp
==============================================================================
--- (empty file)
+++ sandbox/units/boost/units/physical_dimensions/magnetic_flux_density.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -0,0 +1,32 @@
+// Boost.Units - A C++ library for zero-overhead dimensional analysis and
+// unit/quantity manipulation and conversion
+//
+// Copyright (C) 2003-2008 Matthias Christian Schabel
+// Copyright (C) 2008 Steven Watanabe
+//
+// Distributed under the Boost Software License, Version 1.0. (See
+// accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_UNITS_MAGNETIC_FLUX_DENSITY_DERIVED_DIMENSION_HPP
+#define BOOST_UNITS_MAGNETIC_FLUX_DENSITY_DERIVED_DIMENSION_HPP
+
+#include <boost/units/derived_dimension.hpp>
+#include <boost/units/physical_dimensions/mass.hpp>
+#include <boost/units/physical_dimensions/time.hpp>
+#include <boost/units/physical_dimensions/current.hpp>
+
+namespace boost {
+
+namespace units {
+
+/// derived dimension for magnetic flux density : M T^-2 I^-1
+typedef derived_dimension<mass_base_dimension,1,
+ time_base_dimension,-2,
+ current_base_dimension,-1>::type magnetic_flux_density_type;
+
+} // namespace units
+
+} // namespace boost
+
+#endif // BOOST_UNITS_MAGNETIC_FLUX_DENSITY_DERIVED_DIMENSION_HPP

Added: sandbox/units/boost/units/physical_dimensions/permeability.hpp
==============================================================================
--- (empty file)
+++ sandbox/units/boost/units/physical_dimensions/permeability.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -0,0 +1,34 @@
+// Boost.Units - A C++ library for zero-overhead dimensional analysis and
+// unit/quantity manipulation and conversion
+//
+// Copyright (C) 2003-2008 Matthias Christian Schabel
+// Copyright (C) 2008 Steven Watanabe
+//
+// Distributed under the Boost Software License, Version 1.0. (See
+// accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_UNITS_PERMEABILITY_DERIVED_DIMENSION_HPP
+#define BOOST_UNITS_PERMEABILITY_DERIVED_DIMENSION_HPP
+
+#include <boost/units/derived_dimension.hpp>
+#include <boost/units/physical_dimensions/length.hpp>
+#include <boost/units/physical_dimensions/mass.hpp>
+#include <boost/units/physical_dimensions/time.hpp>
+#include <boost/units/physical_dimensions/current.hpp>
+
+namespace boost {
+
+namespace units {
+
+/// derived dimension for permeability : L M T^-2 I^-2
+typedef derived_dimension<length_base_dimension,1,
+ mass_base_dimension,1,
+ time_base_dimension,-2,
+ current_base_dimension,-2>::type permeability_type;
+
+} // namespace units
+
+} // namespace boost
+
+#endif // BOOST_UNITS_PERMEABILITY_DERIVED_DIMENSION_HPP

Added: sandbox/units/boost/units/physical_dimensions/permittivity.hpp
==============================================================================
--- (empty file)
+++ sandbox/units/boost/units/physical_dimensions/permittivity.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -0,0 +1,34 @@
+// Boost.Units - A C++ library for zero-overhead dimensional analysis and
+// unit/quantity manipulation and conversion
+//
+// Copyright (C) 2003-2008 Matthias Christian Schabel
+// Copyright (C) 2008 Steven Watanabe
+//
+// Distributed under the Boost Software License, Version 1.0. (See
+// accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_UNITS_PERMITTIVITY_DERIVED_DIMENSION_HPP
+#define BOOST_UNITS_PERMITTIVITY_DERIVED_DIMENSION_HPP
+
+#include <boost/units/derived_dimension.hpp>
+#include <boost/units/physical_dimensions/length.hpp>
+#include <boost/units/physical_dimensions/mass.hpp>
+#include <boost/units/physical_dimensions/time.hpp>
+#include <boost/units/physical_dimensions/current.hpp>
+
+namespace boost {
+
+namespace units {
+
+/// derived dimension for permittivity : L^-3 M^-1 T^4 I^2
+typedef derived_dimension<length_base_dimension,-3,
+ mass_base_dimension,-1,
+ time_base_dimension,4,
+ current_base_dimension,2>::type permittivity_type;
+
+} // namespace units
+
+} // namespace boost
+
+#endif // BOOST_UNITS_PERMITTIVITY_DERIVED_DIMENSION_HPP

Added: sandbox/units/boost/units/physical_dimensions/reluctance.hpp
==============================================================================
--- (empty file)
+++ sandbox/units/boost/units/physical_dimensions/reluctance.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -0,0 +1,34 @@
+// Boost.Units - A C++ library for zero-overhead dimensional analysis and
+// unit/quantity manipulation and conversion
+//
+// Copyright (C) 2003-2008 Matthias Christian Schabel
+// Copyright (C) 2008 Steven Watanabe
+//
+// Distributed under the Boost Software License, Version 1.0. (See
+// accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_UNITS_RELUCTANCE_DERIVED_DIMENSION_HPP
+#define BOOST_UNITS_RELUCTANCE_DERIVED_DIMENSION_HPP
+
+#include <boost/units/derived_dimension.hpp>
+#include <boost/units/physical_dimensions/length.hpp>
+#include <boost/units/physical_dimensions/mass.hpp>
+#include <boost/units/physical_dimensions/time.hpp>
+#include <boost/units/physical_dimensions/current.hpp>
+
+namespace boost {
+
+namespace units {
+
+/// derived dimension for reluctance : L^-2 M^-1 T^2 I^2
+typedef derived_dimension<length_base_dimension,-2,
+ mass_base_dimension,-1,
+ time_base_dimension,2,
+ current_base_dimension,2>::type reluctance_type;
+
+} // namespace units
+
+} // namespace boost
+
+#endif // BOOST_UNITS_RELUCTANCE_DERIVED_DIMENSION_HPP

Added: sandbox/units/boost/units/physical_dimensions/resistance.hpp
==============================================================================
--- (empty file)
+++ sandbox/units/boost/units/physical_dimensions/resistance.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -0,0 +1,34 @@
+// Boost.Units - A C++ library for zero-overhead dimensional analysis and
+// unit/quantity manipulation and conversion
+//
+// Copyright (C) 2003-2008 Matthias Christian Schabel
+// Copyright (C) 2008 Steven Watanabe
+//
+// Distributed under the Boost Software License, Version 1.0. (See
+// accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_UNITS_RESISTANCE_DERIVED_DIMENSION_HPP
+#define BOOST_UNITS_RESISTANCE_DERIVED_DIMENSION_HPP
+
+#include <boost/units/derived_dimension.hpp>
+#include <boost/units/physical_dimensions/length.hpp>
+#include <boost/units/physical_dimensions/mass.hpp>
+#include <boost/units/physical_dimensions/time.hpp>
+#include <boost/units/physical_dimensions/current.hpp>
+
+namespace boost {
+
+namespace units {
+
+/// derived dimension for resistance : L^2 M T^-3 I^-2
+typedef derived_dimension<length_base_dimension,2,
+ mass_base_dimension,1,
+ time_base_dimension,-3,
+ current_base_dimension,-2>::type resistance_type;
+
+} // namespace units
+
+} // namespace boost
+
+#endif // BOOST_UNITS_RESISTANCE_DERIVED_DIMENSION_HPP

Added: sandbox/units/boost/units/physical_dimensions/resistivity.hpp
==============================================================================
--- (empty file)
+++ sandbox/units/boost/units/physical_dimensions/resistivity.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -0,0 +1,34 @@
+// Boost.Units - A C++ library for zero-overhead dimensional analysis and
+// unit/quantity manipulation and conversion
+//
+// Copyright (C) 2003-2008 Matthias Christian Schabel
+// Copyright (C) 2008 Steven Watanabe
+//
+// Distributed under the Boost Software License, Version 1.0. (See
+// accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_UNITS_RESISTIVITY_DERIVED_DIMENSION_HPP
+#define BOOST_UNITS_RESISTIVITY_DERIVED_DIMENSION_HPP
+
+#include <boost/units/derived_dimension.hpp>
+#include <boost/units/physical_dimensions/length.hpp>
+#include <boost/units/physical_dimensions/mass.hpp>
+#include <boost/units/physical_dimensions/time.hpp>
+#include <boost/units/physical_dimensions/current.hpp>
+
+namespace boost {
+
+namespace units {
+
+/// derived dimension for resistivity : L^3 M T^-3 I^-2
+typedef derived_dimension<length_base_dimension,3,
+ mass_base_dimension,1,
+ time_base_dimension,-3,
+ current_base_dimension,-2>::type resistivity_type;
+
+} // namespace units
+
+} // namespace boost
+
+#endif // BOOST_UNITS_RESISTIVITY_DERIVED_DIMENSION_HPP

Modified: sandbox/units/boost/units/systems/si/base.hpp
==============================================================================
--- sandbox/units/boost/units/systems/si/base.hpp (original)
+++ sandbox/units/boost/units/systems/si/base.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -42,8 +42,8 @@
                                         kelvin_base_unit,
                                         mole_base_unit,
                                         candela_base_unit,
- boost::units::angle::radian_base_unit,
- boost::units::angle::steradian_base_unit>::type system;
+ angle::radian_base_unit,
+ angle::steradian_base_unit>::type system;
 
 /// dimensionless si unit
 typedef unit<dimensionless_type,system> dimensionless;

Modified: sandbox/units/boost/units/systems/si/capacitance.hpp
==============================================================================
--- sandbox/units/boost/units/systems/si/capacitance.hpp (original)
+++ sandbox/units/boost/units/systems/si/capacitance.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -14,8 +14,8 @@
 #include <ostream>
 #include <boost/units/io.hpp>
 
-#include <boost/units/derived_dimension.hpp>
 #include <boost/units/systems/si/base.hpp>
+#include <boost/units/physical_dimensions/capacitance.hpp>
 
 namespace boost {
 
@@ -23,10 +23,7 @@
 
 namespace si {
 
-/// capacitance : L^-2 M^-1 T^4 I^2
-typedef derived_dimension<length_base_dimension,-2,mass_base_dimension,-1,time_base_dimension,4,current_base_dimension,2>::type capacitance_type;
-
-typedef unit<si::capacitance_type,si::system> capacitance;
+typedef unit<capacitance_type,si::system> capacitance;
     
 BOOST_UNITS_STATIC_CONSTANT(farad,capacitance);
 BOOST_UNITS_STATIC_CONSTANT(farads,capacitance);

Modified: sandbox/units/boost/units/systems/si/conductance.hpp
==============================================================================
--- sandbox/units/boost/units/systems/si/conductance.hpp (original)
+++ sandbox/units/boost/units/systems/si/conductance.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -14,8 +14,8 @@
 #include <ostream>
 #include <boost/units/io.hpp>
 
-#include <boost/units/derived_dimension.hpp>
 #include <boost/units/systems/si/base.hpp>
+#include <boost/units/physical_dimensions/conductance.hpp>
 
 namespace boost {
 
@@ -23,10 +23,7 @@
 
 namespace si {
 
-/// conductance : L^-2 M^-1 T^3 I^2
-typedef derived_dimension<length_base_dimension,-2,mass_base_dimension,-1,time_base_dimension,3,current_base_dimension,2>::type conductance_type;
-
-typedef unit<si::conductance_type,si::system> conductance;
+typedef unit<conductance_type,si::system> conductance;
 
 BOOST_UNITS_STATIC_CONSTANT(siemen,conductance);
 BOOST_UNITS_STATIC_CONSTANT(siemens,conductance);

Modified: sandbox/units/boost/units/systems/si/conductivity.hpp
==============================================================================
--- sandbox/units/boost/units/systems/si/conductivity.hpp (original)
+++ sandbox/units/boost/units/systems/si/conductivity.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -11,8 +11,8 @@
 #ifndef BOOST_UNITS_SI_CONDUCTIVITY_HPP
 #define BOOST_UNITS_SI_CONDUCTIVITY_HPP
 
-#include <boost/units/derived_dimension.hpp>
 #include <boost/units/systems/si/base.hpp>
+#include <boost/units/physical_dimensions/conductivity.hpp>
 
 namespace boost {
 
@@ -20,11 +20,8 @@
 
 namespace si {
 
-/// conductivity : L^-3 M^-1 T^3 I^2
-typedef derived_dimension<length_base_dimension,-3,mass_base_dimension,-1,time_base_dimension,3,current_base_dimension,2>::type conductivity_type;
-
-typedef unit<si::conductivity_type,si::system> conductivity;
-
+typedef unit<conductivity_type,si::system> conductivity;
+
 } // namespace si
 
 } // namespace units

Modified: sandbox/units/boost/units/systems/si/electric_charge.hpp
==============================================================================
--- sandbox/units/boost/units/systems/si/electric_charge.hpp (original)
+++ sandbox/units/boost/units/systems/si/electric_charge.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -14,8 +14,8 @@
 #include <ostream>
 #include <boost/units/io.hpp>
 
-#include <boost/units/derived_dimension.hpp>
 #include <boost/units/systems/si/base.hpp>
+#include <boost/units/physical_dimensions/electric_charge.hpp>
 
 namespace boost {
 
@@ -23,11 +23,8 @@
 
 namespace si {
 
-/// electric charge : T^1 I^1
-typedef derived_dimension<time_base_dimension,1,current_base_dimension,1>::type electric_charge_type;
-
-typedef unit<si::electric_charge_type,si::system> electric_charge;
-
+typedef unit<electric_charge_type,si::system> electric_charge;
+
 BOOST_UNITS_STATIC_CONSTANT(coulomb,electric_charge);
 BOOST_UNITS_STATIC_CONSTANT(coulombs,electric_charge);
 

Modified: sandbox/units/boost/units/systems/si/electric_potential.hpp
==============================================================================
--- sandbox/units/boost/units/systems/si/electric_potential.hpp (original)
+++ sandbox/units/boost/units/systems/si/electric_potential.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -14,8 +14,8 @@
 #include <ostream>
 #include <boost/units/io.hpp>
 
-#include <boost/units/derived_dimension.hpp>
 #include <boost/units/systems/si/base.hpp>
+#include <boost/units/physical_dimensions/electric_potential.hpp>
 
 namespace boost {
 
@@ -23,10 +23,7 @@
 
 namespace si {
 
-/// electric potential : L^2 M T^-3 I^-1
-typedef derived_dimension<length_base_dimension,2,mass_base_dimension,1,time_base_dimension,-3,current_base_dimension,-1>::type electric_potential_type;
-
-typedef unit<si::electric_potential_type,si::system> electric_potential;
+typedef unit<electric_potential_type,si::system> electric_potential;
     
 BOOST_UNITS_STATIC_CONSTANT(volt,electric_potential);
 BOOST_UNITS_STATIC_CONSTANT(volts,electric_potential);

Modified: sandbox/units/boost/units/systems/si/impedance.hpp
==============================================================================
--- sandbox/units/boost/units/systems/si/impedance.hpp (original)
+++ sandbox/units/boost/units/systems/si/impedance.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -11,8 +11,8 @@
 #ifndef BOOST_UNITS_SI_IMPEDANCE_HPP
 #define BOOST_UNITS_SI_IMPEDANCE_HPP
 
-#include <boost/units/derived_dimension.hpp>
 #include <boost/units/systems/si/base.hpp>
+#include <boost/units/physical_dimensions/impedance.hpp>
 
 namespace boost {
 
@@ -20,10 +20,7 @@
 
 namespace si {
 
-/// impedance : L^2 M T^-3 I^-2
-typedef derived_dimension<length_base_dimension,2,mass_base_dimension,1,time_base_dimension,-3,current_base_dimension,-2>::type impedance_type;
-
-typedef unit<si::impedance_type,si::system> impedance;
+typedef unit<impedance_type,si::system> impedance;
                                             
 } // namespace si
 

Modified: sandbox/units/boost/units/systems/si/inductance.hpp
==============================================================================
--- sandbox/units/boost/units/systems/si/inductance.hpp (original)
+++ sandbox/units/boost/units/systems/si/inductance.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -14,8 +14,8 @@
 #include <ostream>
 #include <boost/units/io.hpp>
 
-#include <boost/units/derived_dimension.hpp>
 #include <boost/units/systems/si/base.hpp>
+#include <boost/units/physical_dimensions/inductance.hpp>
 
 namespace boost {
 
@@ -23,10 +23,7 @@
 
 namespace si {
 
-/// inductance : L^2 M T^-2 I^-2
-typedef derived_dimension<length_base_dimension,2,mass_base_dimension,1,time_base_dimension,-2,current_base_dimension,-2>::type inductance_type;
-
-typedef unit<si::inductance_type,si::system> inductance;
+typedef unit<inductance_type,si::system> inductance;
     
 BOOST_UNITS_STATIC_CONSTANT(henry,inductance);
 BOOST_UNITS_STATIC_CONSTANT(henrys,inductance);

Modified: sandbox/units/boost/units/systems/si/magnetic_field_intensity.hpp
==============================================================================
--- sandbox/units/boost/units/systems/si/magnetic_field_intensity.hpp (original)
+++ sandbox/units/boost/units/systems/si/magnetic_field_intensity.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -11,8 +11,8 @@
 #ifndef BOOST_UNITS_SI_MAGNETIC_FIELD_INTENSITY_HPP
 #define BOOST_UNITS_SI_MAGNETIC_FIELD_INTENSITY_HPP
 
-#include <boost/units/derived_dimension.hpp>
 #include <boost/units/systems/si/base.hpp>
+#include <boost/units/physical_dimensions/magnetic_field_intensity.hpp>
 
 namespace boost {
 
@@ -20,11 +20,8 @@
 
 namespace si {
 
-/// magnetic field intensity : L^-1 I
-typedef derived_dimension<length_base_dimension,-1,current_base_dimension,1>::type magnetic_field_intensity_type;
-
-typedef unit<si::magnetic_field_intensity_type,si::system> magnetic_field_intensity;
-
+typedef unit<magnetic_field_intensity_type,si::system> magnetic_field_intensity;
+
 } // namespace si
 
 } // namespace units

Modified: sandbox/units/boost/units/systems/si/magnetic_flux.hpp
==============================================================================
--- sandbox/units/boost/units/systems/si/magnetic_flux.hpp (original)
+++ sandbox/units/boost/units/systems/si/magnetic_flux.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -14,8 +14,8 @@
 #include <ostream>
 #include <boost/units/io.hpp>
 
-#include <boost/units/derived_dimension.hpp>
 #include <boost/units/systems/si/base.hpp>
+#include <boost/units/physical_dimensions/magnetic_flux.hpp>
 
 namespace boost {
 
@@ -23,10 +23,7 @@
 
 namespace si {
 
-/// magnetic flux : L^2 M T^-2 I^-1
-typedef derived_dimension<length_base_dimension,2,mass_base_dimension,1,time_base_dimension,-2,current_base_dimension,-1>::type magnetic_flux_type;
-
-typedef unit<si::magnetic_flux_type,si::system> magnetic_flux;
+typedef unit<magnetic_flux_type,si::system> magnetic_flux;
     
 BOOST_UNITS_STATIC_CONSTANT(weber,magnetic_flux);
 BOOST_UNITS_STATIC_CONSTANT(webers,magnetic_flux);

Modified: sandbox/units/boost/units/systems/si/magnetic_flux_density.hpp
==============================================================================
--- sandbox/units/boost/units/systems/si/magnetic_flux_density.hpp (original)
+++ sandbox/units/boost/units/systems/si/magnetic_flux_density.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -14,8 +14,8 @@
 #include <ostream>
 #include <boost/units/io.hpp>
 
-#include <boost/units/derived_dimension.hpp>
 #include <boost/units/systems/si/base.hpp>
+#include <boost/units/physical_dimensions/magnetic_flux_density.hpp>
 
 namespace boost {
 
@@ -23,10 +23,7 @@
 
 namespace si {
 
-/// magnetic flux density : M T^-2 I^-1
-typedef derived_dimension<mass_base_dimension,1,time_base_dimension,-2,current_base_dimension,-1>::type magnetic_flux_density_type;
-
-typedef unit<si::magnetic_flux_density_type,si::system> magnetic_flux_density;
+typedef unit<magnetic_flux_density_type,si::system> magnetic_flux_density;
     
 BOOST_UNITS_STATIC_CONSTANT(tesla,magnetic_flux_density);
 BOOST_UNITS_STATIC_CONSTANT(teslas,magnetic_flux_density);

Modified: sandbox/units/boost/units/systems/si/permeability.hpp
==============================================================================
--- sandbox/units/boost/units/systems/si/permeability.hpp (original)
+++ sandbox/units/boost/units/systems/si/permeability.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -14,8 +14,8 @@
 #include <ostream>
 #include <boost/units/io.hpp>
 
-#include <boost/units/derived_dimension.hpp>
 #include <boost/units/systems/si/base.hpp>
+#include <boost/units/physical_dimensions/permeability.hpp>
 
 namespace boost {
 
@@ -23,10 +23,7 @@
 
 namespace si {
 
-/// permeability : L M T^-2 I^-2
-typedef derived_dimension<length_base_dimension,1,mass_base_dimension,1,time_base_dimension,-2,current_base_dimension,-2>::type permeability_type;
-
-typedef unit<si::permeability_type,si::system> permeability;
+typedef unit<permeability_type,si::system> permeability;
 
 } // namespace si
 

Modified: sandbox/units/boost/units/systems/si/permittivity.hpp
==============================================================================
--- sandbox/units/boost/units/systems/si/permittivity.hpp (original)
+++ sandbox/units/boost/units/systems/si/permittivity.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -14,8 +14,8 @@
 #include <ostream>
 #include <boost/units/io.hpp>
 
-#include <boost/units/derived_dimension.hpp>
 #include <boost/units/systems/si/base.hpp>
+#include <boost/units/physical_dimensions/permittivity.hpp>
 
 namespace boost {
 
@@ -23,10 +23,7 @@
 
 namespace si {
 
-/// permittivity : L^-3 M^-1 T^4 I^2
-typedef derived_dimension<length_base_dimension,-3,mass_base_dimension,-1,time_base_dimension,4,current_base_dimension,2>::type permittivity_type;
-
-typedef unit<si::permittivity_type,si::system> permittivity;
+typedef unit<permittivity_type,si::system> permittivity;
 
 } // namespace si
 

Modified: sandbox/units/boost/units/systems/si/reluctance.hpp
==============================================================================
--- sandbox/units/boost/units/systems/si/reluctance.hpp (original)
+++ sandbox/units/boost/units/systems/si/reluctance.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -11,8 +11,8 @@
 #ifndef BOOST_UNITS_SI_RELUCTANCE_HPP
 #define BOOST_UNITS_SI_RELUCTANCE_HPP
 
-#include <boost/units/derived_dimension.hpp>
 #include <boost/units/systems/si/base.hpp>
+#include <boost/units/physical_dimensions/reluctance.hpp>
 
 namespace boost {
 
@@ -20,10 +20,7 @@
 
 namespace si {
 
-/// reluctance : L^-2 M^-1 T^2 I^2
-typedef derived_dimension<length_base_dimension,-2,mass_base_dimension,-1,time_base_dimension,2,current_base_dimension,2>::type reluctance_type;
-
-typedef unit<si::reluctance_type,si::system> reluctance;
+typedef unit<reluctance_type,si::system> reluctance;
 
 } // namespace si
 

Modified: sandbox/units/boost/units/systems/si/resistance.hpp
==============================================================================
--- sandbox/units/boost/units/systems/si/resistance.hpp (original)
+++ sandbox/units/boost/units/systems/si/resistance.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -14,8 +14,8 @@
 #include <ostream>
 #include <boost/units/io.hpp>
 
-#include <boost/units/derived_dimension.hpp>
 #include <boost/units/systems/si/base.hpp>
+#include <boost/units/physical_dimensions/resistance.hpp>
 
 namespace boost {
 
@@ -23,10 +23,7 @@
 
 namespace si {
 
-/// resistance : L^2 M T^-3 I^-2
-typedef derived_dimension<length_base_dimension,2,mass_base_dimension,1,time_base_dimension,-3,current_base_dimension,-2>::type resistance_type;
-
-typedef unit<si::resistance_type,si::system> resistance;
+typedef unit<resistance_type,si::system> resistance;
 
 BOOST_UNITS_STATIC_CONSTANT(ohm,resistance);
 BOOST_UNITS_STATIC_CONSTANT(ohms,resistance);

Modified: sandbox/units/boost/units/systems/si/resistivity.hpp
==============================================================================
--- sandbox/units/boost/units/systems/si/resistivity.hpp (original)
+++ sandbox/units/boost/units/systems/si/resistivity.hpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -11,8 +11,8 @@
 #ifndef BOOST_UNITS_SI_RESISTIVITY_HPP
 #define BOOST_UNITS_SI_RESISTIVITY_HPP
 
-#include <boost/units/derived_dimension.hpp>
 #include <boost/units/systems/si/base.hpp>
+#include <boost/units/physical_dimensions/resistivity.hpp>
 
 namespace boost {
 
@@ -20,10 +20,7 @@
 
 namespace si {
 
-/// resistivity : L^3 M T^-3 I^-2
-typedef derived_dimension<length_base_dimension,3,mass_base_dimension,1,time_base_dimension,-3,current_base_dimension,-2>::type resistivity_type;
-
-typedef unit<si::resistivity_type,si::system> resistivity;
+typedef unit<resistivity_type,si::system> resistivity;
 
 } // namespace si
 

Modified: sandbox/units/libs/units/example/quaternion.cpp
==============================================================================
--- sandbox/units/libs/units/example/quaternion.cpp (original)
+++ sandbox/units/libs/units/example/quaternion.cpp 2008-05-20 23:59:19 EDT (Tue, 20 May 2008)
@@ -180,7 +180,7 @@
 
 int main(void)
 {
- using namespace boost::math;
+ using boost::math::quaternion;
     using namespace boost::units;
     using namespace boost::units::test;
 


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk