- Timestamp:
- 01/26/12 21:06:25 (4 months ago)
- Location:
- branches/mcxtrace-1.0/lib/share
- Files:
-
- 2 modified
-
mccode-r.c (modified) (1 diff)
-
mccode-r.h.in (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
branches/mcxtrace-1.0/lib/share/mccode-r.c
r3251 r3253 3508 3508 3509 3509 /******************************************************************************* 3510 * mccoordschange: applies rotation to (x y z) and (vx vy vz) . Spin unchanged3510 * mccoordschange: applies rotation to (x y z) and (vx vy vz) and Spin (sx,sy,sz) 3511 3511 *******************************************************************************/ 3512 3512 void 3513 3513 mccoordschange(Coords a, Rotation t, double *x, double *y, double *z, 3514 double *vx, double *vy, double *vz )3514 double *vx, double *vy, double *vz, double *sx, double *sy, double *sz) 3515 3515 { 3516 3516 Coords b, c; 3517 3517 3518 b.x = *x; 3519 b.y = *y; 3520 b.z = *z; 3521 c = rot_apply(t, b); 3522 b = coords_add(c, a); 3523 *x = b.x; 3524 *y = b.y; 3525 *z = b.z; 3526 3527 b.x = *vx; 3528 b.y = *vy; 3529 b.z = *vz; 3530 c = rot_apply(t, b); 3531 *vx = c.x; 3532 *vy = c.y; 3533 *vz = c.z; 3534 /* spin handled with mccoordschange_polarisation */ 3535 } 3536 3537 /******************************************************************************* 3538 * mccoordschange_polarisation: applies rotation to (sx sy sz) 3518 if (x != NULL && y != NULL && z != NULL) { 3519 b.x = *x; 3520 b.y = *y; 3521 b.z = *z; 3522 c = rot_apply(t, b); 3523 b = coords_add(c, a); 3524 *x = b.x; 3525 *y = b.y; 3526 *z = b.z; 3527 } 3528 3529 if (vx != NULL && vy != NULL && vz != NULL) mccoordschange_polarisation(t, vx, vy, vz); 3530 3531 if (sx != NULL && sy != NULL && sz != NULL) mccoordschange_polarisation(t, sx, sy, sz); 3532 3533 } 3534 3535 /******************************************************************************* 3536 * mccoordschange_polarisation: applies rotation to vector (sx sy sz) 3539 3537 *******************************************************************************/ 3540 3538 void -
branches/mcxtrace-1.0/lib/share/mccode-r.h.in
r3164 r3253 612 612 Coords rot_apply(Rotation t, Coords a); 613 613 614 void mccoordschange(Coords a, Rotation t, double *x, double *y, double *z, 615 double *vx, double *vy, double *vz, double *sx, double *sy, double *sz); 616 void 617 mccoordschange_polarisation(Rotation t, double *sx, double *sy, double *sz); 618 614 619 double mcestimate_error(double N, double p1, double p2); 615 620 void mcreadparams(void);
