proj home

Files   Classes   Functions   Hierarchy  

desystestspring2 Class Reference

Two mass three spring system, fixed ends. More...

#include <desystestspring2.h>

Collaboration diagram for desystestspring2:

List of all members.

Public Member Functions

 desystestspring2 (doublec *xval_, doublec *wi_)
 integrator interface supported.
void kset (doublec *k)
 Cleanup.
void equ01 (double &Dz, doublec z, doublec x) const
 First mass offset's change in position.
void equ02 (double &Dz, doublec z, doublec x) const
 Second mass offset's change in position.
void operator++ ()
 integrator supports change of equation pointed to.
void operator() (double &Dz, doublec z, doublec x) const
 dy for associated equation.

Public Attributes

doublecxval
 x value
doublecwi
 (wi[0],wi[1],wi[2],wi[3]) corresponds with (w0,w0',w1,w1')
double ki [3]
 Spring constants.
uint current
 Current equation.


Detailed Description

Two mass three spring system, fixed ends.

Definition at line 10 of file desystestspring2.h.


Constructor & Destructor Documentation

desystestspring2::desystestspring2 ( doublec xval_,
doublec wi_ 
) [inline]

integrator interface supported.

Definition at line 25 of file desystestspring2.h.

00026     : xval(xval_), wi(wi_), current(0) {}


Member Function Documentation

void desystestspring2::equ01 ( double &  Dz,
doublec  z,
doublec  x 
) const

First mass offset's change in position.

Definition at line 21 of file desystestspring2.cpp.

Referenced by operator()().

00026 {
00027   // (wi[0],wi[1],wi[2],wi[3]) corresponds with (w0,w0',w1,w1')
00028   // w0'' = k1*w1 - k1*w0 - k0*w0
00029   Dz = ki[1]*wi[2]-ki[1]*wi[0]-ki[0]*wi[0];
00030 }

void desystestspring2::equ02 ( double &  Dz,
doublec  z,
doublec  x 
) const

Second mass offset's change in position.

Definition at line 33 of file desystestspring2.cpp.

Referenced by operator()().

00038 {
00039   // (wi[0],wi[1],wi[2],wi[3]) corresponds with (w0,w0',w1,w1')
00040   // w1'' = -k2*w1 - k1*w1 + k1*w0
00041   Dz = -ki[2]*wi[2]-ki[1]*wi[2]+ki[1]*wi[0];
00042 }

void desystestspring2::kset ( doublec k  ) 

Cleanup.

Set the spring constants.

Definition at line 13 of file desystestspring2.cpp.

References ki.

00014 {
00015   ki[0] = k[0];
00016   ki[1] = k[1];
00017   ki[2] = k[2];
00018 }

void desystestspring2::operator() ( double &  Dz,
doublec  z,
doublec  x 
) const [inline]

dy for associated equation.

Definition at line 43 of file desystestspring2.h.

References current, equ01(), and equ02().

00044   { 
00045     switch (current)
00046     {
00047       case 0: equ01(Dz,z,x); break;
00048       case 1: equ02(Dz,z,x); break;
00049     }
00050   }

void desystestspring2::operator++ (  )  [inline]

integrator supports change of equation pointed to.

Definition at line 40 of file desystestspring2.h.

References current.

00041     { ++current; current %= 2; }


Member Data Documentation

Current equation.

Definition at line 22 of file desystestspring2.h.

Referenced by operator()(), and operator++().

Spring constants.

Definition at line 20 of file desystestspring2.h.

Referenced by kset().

(wi[0],wi[1],wi[2],wi[3]) corresponds with (w0,w0',w1,w1')

Definition at line 18 of file desystestspring2.h.

x value

Definition at line 15 of file desystestspring2.h.


The documentation for this class was generated from the following files:

Generated on Fri Mar 4 00:49:55 2011 for Chelton Evans Source by  doxygen 1.5.8