Example #1
0
 def test_solenoid(self):
     l = 3.5
     pi = 3.14
     ratio = 0.79
     sol = madseq.Element(None, 'solenoid', odicti(Ks=pi, L=l))
     scaled = madseq.rescale_makethin(sol, ratio)
     self.assertEqual(scaled['ksi'], pi*l*ratio)
     self.assertEqual(scaled['lrad'], l*ratio)
     self.assertEqual(scaled.type, 'solenoid')
Example #2
0
 def test_quadrupole(self):
     l = 3.5
     pi = 3.14
     ratio = 0.47
     quad = madseq.Element(None, 'QUADRUPOLE', odicti(K1=pi, L=l))
     scaled = madseq.rescale_makethin(quad, ratio)
     self.assertEqual(scaled['KNL'], [0, pi*l*ratio])
     self.assertEqual(scaled['lrad'], l * ratio)
     self.assertEqual(scaled.get('K1'), None)
     self.assertEqual(scaled.type, 'multipole')
Example #3
0
 def test_sbend(self):
     l = 3.5
     pi = 3.14
     ratio = 0.3
     sbend = madseq.Element(None, 'SBEND', odicti(angle=pi, hgap=1, L=l))
     scaled = madseq.rescale_makethin(sbend, ratio)
     self.assertEqual(scaled['KNL'], [pi*ratio])
     self.assertEqual(scaled['lrad'], l * ratio)
     self.assertEqual(scaled.get('angle'), None)
     self.assertEqual(scaled.get('hgap'), None)
     self.assertEqual(scaled.type, 'multipole')