01: package JSci.physics.particles;
02:
03: import JSci.physics.quantum.QuantumParticle;
04:
05: /**
06: * A class representing gluons.
07: * @version 1.5
08: * @author Mark Hale
09: */
10: public final class Gluon extends GaugeBoson {
11: public final static int RED_ANTIGREEN = 12;
12: public final static int RED_ANTIBLUE = 13;
13: public final static int GREEN_ANTIRED = 21;
14: public final static int GREEN_ANTIBLUE = 23;
15: public final static int BLUE_ANTIRED = 31;
16: public final static int BLUE_ANTIGREEN = 32;
17: /**
18: * The state (rr~-gg~)/sqrt(2).
19: */
20: public final static int MIXED_RED_GREEN = 11 - 22;
21: /**
22: * The state (rr~+gg~-2bb~)/sqrt(6).
23: */
24: public final static int MIXED_RED_GREEN_2BLUE = 11 + 22 - 2 * (33);
25:
26: /**
27: * Constructs a gluon.
28: */
29: public Gluon() {
30: }
31:
32: /**
33: * The color.
34: */
35: public int color;
36:
37: /**
38: * Returns the rest mass (MeV).
39: * @return 0.0
40: */
41: public double restMass() {
42: return 0.0;
43: }
44:
45: /**
46: * Returns the number of 1/2 units of spin.
47: * @return 2
48: */
49: public int spin() {
50: return 2;
51: }
52:
53: /**
54: * Returns the electric charge.
55: * @return 0
56: */
57: public int charge() {
58: return 0;
59: }
60:
61: /**
62: * Returns the antiparticle of this particle.
63: */
64: public QuantumParticle anti() {
65: return new Gluon();
66: }
67:
68: /**
69: * Returns true if qp is the antiparticle.
70: */
71: public boolean isAnti(QuantumParticle qp) {
72: return (qp != null) && (qp instanceof Gluon);
73: }
74:
75: /**
76: * Returns a string representing this class.
77: */
78: public String toString() {
79: return new String("Gluon");
80: }
81: }
|