// Test program for TwoVector class // Glen Cowan, RHUL Physics, October 2004 #include #include #include "TwoVector.h" const double PI = 3.14159265; using namespace std; int main(){ TwoVector a(1, 1); a = a*2; cout << "a = " << a.x() << ", " << a.y() << endl; TwoVector b = a; // uses default copy constructor b = 2*b; // tests mult. by constant cout << "b = " << b.x() << ", " << b.y() << endl; cout << "r_a = " << a.r() << endl; cout << "theta_a = " << a.theta() << endl; cout << "sin(theta_a) = " << a.sinTheta() << endl; cout << "cos(theta_a) = " << a.cosTheta() << endl; TwoVector c = a + b; TwoVector d = a - b; cout << "a + b = " << c.x() << ", " << c.y() << endl; cout << "a - b = " << d.x() << ", " << d.y() << endl; cout << "a dot b = " << dot(a,b) << endl; double alpha = PI/2.0; a.rotate(alpha); cout << "rotated a = " << a.x() << ", " << a.y() << endl; cout << "r, theta = " << a.r() << ", " << a.theta() << endl; b = rotate(b, alpha); cout << "rotated b = " << b.x() << ", " << b.y() << endl; cout << "r, theta = " << b.r() << ", " << b.theta() << endl; return 0; }