Skip to content

Commit f6a9c40

Browse files
committed
parameters modified to allow arbitrary magnetisation list
1 parent 049fcb2 commit f6a9c40

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

idcomponents/parameters.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,6 @@ def __init__(self, **kwargs):
8383

8484
"perturbation_fn" : self.perturbation_fn
8585

86-
8786
}
8887

8988
for (prop, default) in prop_defaults.items():
@@ -92,7 +91,9 @@ def __init__(self, **kwargs):
9291
###Derived Attributes###
9392

9493
#Undulator
95-
self.totalmagnets = int(self.periods*self.magnets_per_period + 1);
94+
self.totalmagnets = int(self.periods*self.magnets_per_period + 1)
95+
96+
self.perturbation_list = np.zeros([self.totalmagnets,2])
9697

9798
#magnet thicknesses
9899
self.nominal_fmagnet_dimensions[1] = (self.periodlength-self.magnets_per_period * self.shim) / self.magnets_per_period
@@ -114,10 +115,16 @@ def __init__(self, **kwargs):
114115
#default magnet profile
115116
self.magnet_profile = np.random.rand(int(self.nominal_fmagnet_dimensions[0]+1))
116117

118+
#magnetisation list
119+
self.M_list = np.zeros([self.totalmagnets,3])
120+
self.M_list[2,:] = 1
121+
117122
#magnetmaterial
118123
self.magnet_material = wrdm.wradMatLin(self.ksi,[0,0,self.M])
119124

120125

126+
127+
121128
#core undulator parameters
122129
if self.type == 'Compensated_APPLE':
123130
self.magnet_rows = 12

0 commit comments

Comments
 (0)