prepare for beamtime
This commit is contained in:
@@ -28,7 +28,8 @@ class HelicalScan:
|
||||
#fn='/home/zamofing_t/Documents/prj/SwissFEL/epics_ioc_modules/ESB_MX/python/data/'+time.strftime('%y-%m-%d-%H_%M_%S')
|
||||
#cfg = {"sequencer": ['gen_grid_points(w=5,h=5,pitch=100,rnd=0.4)', 'sort_points()','gen_prog(file="'+fn+'.prg",host="SAR-CPPM-EXPMX1",mode=1,pt2pt_time=10,cnt=1)', 'plot_gather("'+fn+'.npz")']}
|
||||
#cfg = {"sequencer": ['test_find_rot_ctr()']}
|
||||
cfg = {"sequencer": ['test_find_rot_ctr(n=5. ,per=1. ,phi=24.6 ,bias=2.31,ampl=4.12)']}
|
||||
#cfg = {"sequencer": ['test_find_rot_ctr(n=5. ,per=1.,bias=2.31,ampl=4.12,phi=24.6)']}
|
||||
cfg = {"sequencer": ['test_coord_trf()']}
|
||||
|
||||
self.cfg=dotdict(cfg)
|
||||
self.args=args
|
||||
@@ -51,7 +52,70 @@ class HelicalScan:
|
||||
if not dryrun:
|
||||
eval('self.' + cmd)
|
||||
|
||||
def meas_rot_ctr(self,y,per=1):
|
||||
def test_coord_trf(self):
|
||||
n = 3.; per = 1.; t = np.arange(n)
|
||||
p=((2.3,2.31,4.12,24.6),(6.2,2.74,32.1,3.28)) #(y, bias, ampl, phi)
|
||||
self.param=param=np.ndarray((len(p),5))
|
||||
z=4.5 # fix z position
|
||||
for i in range(2):
|
||||
(y, bias, ampl, phi) =p[i]
|
||||
x= ampl * np.cos(2 * np.pi * (per / n * t + phi / 360.)) + bias
|
||||
print('yMeas_%d='%i+str(y)+' xMeas_%d='%i+str(x))
|
||||
#param[i]=(z_i, y_i, x_i, r_i,phi_i)
|
||||
param[i][0] =z
|
||||
param[i][1] =y
|
||||
param[i][2:]=HelicalScan.meas_rot_ctr(x) #(bias,ampl,phase)
|
||||
pass
|
||||
print param
|
||||
#self.fwd_transform(param[0][1],0.,param[0][2],param[0][1])
|
||||
# y_0 ,120deg ,x_0 ,z_0)
|
||||
self.fwd_transform(param[0][1],2*np.pi/3.,param[0][2],param[0][0])
|
||||
#self.fwd_transform(param[1][1],0.,param[1][2],param[1][3])
|
||||
|
||||
|
||||
|
||||
def fwd_transform(self,y,w,cx,cz):
|
||||
#cx,cy: coarse stage
|
||||
#TODO: NOT WORKING AT ALL NOW...
|
||||
param=self.param
|
||||
# param[i]=(z_i, y_i, x_i, r_i,phi_i)
|
||||
p=np.ndarray((param.shape[0], 3))
|
||||
for i in range(2):
|
||||
#p[i][0]=param[i][2]+param[i][3]*np.cos(param[i][4]+w) # x= x_i+r_i*cos(phi_i*w)+cx
|
||||
p[i][0]=cx+param[i][3]*np.cos(param[i][4]+w) # x= x_i+r_i*cos(phi_i*w)+cx
|
||||
p[i][1]=param[i][1] # y= y_i
|
||||
#p[i][2]=param[i][2]+param[i][3]*np.sin(param[i][4]+w) # z= z_i+r_i*sin(phi_i*w)
|
||||
p[i][2] =cz + param[i][3] * np.sin(param[i][4] + w) # z= z_i+r_i*sin(phi_i*w)
|
||||
print p
|
||||
v=p[1]-p[0]
|
||||
v=v/np.sqrt(v.dot(v)) # v/|v|
|
||||
v=v*(y-param[0][1])/(param[1][1]-param[0][1]) # v(y)=v*(v-y_0)/(y_1-y_0)
|
||||
v=p[0]+v
|
||||
|
||||
#v=v/abs(v)
|
||||
print v
|
||||
|
||||
|
||||
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
|
||||
|
||||
#x,y,z
|
||||
#returns y,w,dx,dz
|
||||
pass
|
||||
|
||||
def inv_transform(y,phi,dx=0,dz=0):
|
||||
#dx,dy: deviation from cristal center line
|
||||
#ps= #x,y,z
|
||||
#returns y,phi,cx,cz
|
||||
pass
|
||||
|
||||
|
||||
@staticmethod
|
||||
def meas_rot_ctr(y,per=1):
|
||||
# find the amplitude bias and phase of an equidistant sampled sinus
|
||||
# it needs at least 3 measurements e.g. at 0,120 240 deg or 0 90 180 270 deg
|
||||
# per is the number of persiods, default is 1 period =360 deg
|
||||
@@ -61,9 +125,10 @@ class HelicalScan:
|
||||
bias=np.absolute(f[0]/n)
|
||||
phase=np.angle(f[idx])
|
||||
ampl=np.absolute(f[idx])*2/n
|
||||
return (bias,phase,ampl)
|
||||
return (bias,ampl,phase)
|
||||
|
||||
def test_find_rot_ctr(self,n=3. ,per=1. ,phi=37 ,bias=4.1,ampl=2.4):
|
||||
@staticmethod
|
||||
def test_find_rot_ctr(n=3.,per=1.,bias=4.1,ampl=2.4,phi=37):
|
||||
# find the rotation center, amplitude out of n (niminum 3) measurements
|
||||
# n number of equidistant measurements
|
||||
# per number of periods (full rotation of all measurements nut be a interger value for precise measurements)
|
||||
@@ -73,24 +138,18 @@ class HelicalScan:
|
||||
|
||||
t = np.arange(n)
|
||||
y=ampl*np.cos(2*np.pi*(per/n*t+phi/360.))+bias
|
||||
sp = np.fft.fft(y)
|
||||
freq = np.fft.fftfreq(t.shape[-1])
|
||||
plt.figure(1)
|
||||
plt.subplot(311)
|
||||
plt.plot(t,y,'b.-')
|
||||
plt.subplot(312)
|
||||
#plt.plot(t, sp.real,'b.-', t, sp.imag,'r.-')
|
||||
plt.step(t, sp.real,'b.-', t, sp.imag,'r.-', where='mid')
|
||||
#plt.stem(t, sp.real,'b-')
|
||||
#plt.plot(freq, sp.real,'b.-', freq, sp.imag,'r.-')
|
||||
|
||||
idx=int(per)
|
||||
bias=np.absolute(sp[0]/n)
|
||||
phase=np.angle(sp[idx])
|
||||
ampl=np.absolute(sp[idx]) * 2 / n
|
||||
plt.subplot(312)
|
||||
f = np.fft.fft(y)
|
||||
plt.step(t, f.real,'b.-', t, f.imag,'r.-', where='mid')
|
||||
|
||||
(bias,ampl,phase)=HelicalScan.meas_rot_ctr(y, per)
|
||||
print('bias: '+str(bias))
|
||||
print('phase: '+str(phase*360./2/np.pi))
|
||||
print('amplitude: '+str(ampl))
|
||||
print('phase: '+str(phase*360./2/np.pi))
|
||||
|
||||
plt.subplot(313)
|
||||
t2 = np.linspace(0,2*np.pi,64)
|
||||
|
||||
@@ -18,6 +18,26 @@
|
||||
sodipodi:docname="helicalscan1.svg">
|
||||
<defs
|
||||
id="defs4">
|
||||
<inkscape:path-effect
|
||||
effect="spiro"
|
||||
id="path-effect3724"
|
||||
is_visible="true" />
|
||||
<inkscape:path-effect
|
||||
effect="spiro"
|
||||
id="path-effect3720"
|
||||
is_visible="true" />
|
||||
<inkscape:path-effect
|
||||
effect="spiro"
|
||||
id="path-effect3716"
|
||||
is_visible="true" />
|
||||
<inkscape:path-effect
|
||||
effect="spiro"
|
||||
id="path-effect3712"
|
||||
is_visible="true" />
|
||||
<inkscape:path-effect
|
||||
effect="spiro"
|
||||
id="path-effect3706"
|
||||
is_visible="true" />
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Mend"
|
||||
orient="auto"
|
||||
@@ -113,17 +133,26 @@
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.88479319"
|
||||
inkscape:cx="391.99221"
|
||||
inkscape:cy="491.90477"
|
||||
inkscape:zoom="0.91503512"
|
||||
inkscape:cx="61.236951"
|
||||
inkscape:cy="572.69075"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
inkscape:current-layer="g3894"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1871"
|
||||
inkscape:window-height="1176"
|
||||
inkscape:window-x="49"
|
||||
inkscape:window-y="24"
|
||||
inkscape:window-maximized="1" />
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:snap-bbox="false"
|
||||
inkscape:bbox-paths="true"
|
||||
inkscape:bbox-nodes="true"
|
||||
inkscape:snap-bbox-edge-midpoints="true"
|
||||
inkscape:snap-bbox-midpoints="true"
|
||||
inkscape:object-paths="true"
|
||||
inkscape:snap-intersection-paths="true"
|
||||
inkscape:object-nodes="true"
|
||||
inkscape:snap-smooth-nodes="true" />
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
@@ -160,8 +189,8 @@
|
||||
id="path4155"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 232.16105,182.4569 219.7738,0"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.64089721;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 90.847197,182.4569 361.087653,0"
|
||||
id="path4157"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
@@ -170,8 +199,8 @@
|
||||
id="path4159"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.60790253;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 176.61822,364.42032 324.86563,0"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.67468059;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 92.933786,364.42032 400.158704,0"
|
||||
id="path4157-6"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
@@ -201,7 +230,7 @@
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.63367343;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5049)" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:sans-serif;font-stretch:normal;font-variant:normal;"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:MathJax_Size1;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:MathJax_Size1;font-stretch:normal;font-variant:normal;"
|
||||
x="578.60449"
|
||||
y="458.57333"
|
||||
id="text4965"
|
||||
@@ -212,7 +241,7 @@
|
||||
y="458.57333">x</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:sans-serif;font-stretch:normal;font-variant:normal;"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:MathJax_Size1;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:MathJax_Size1;font-stretch:normal;font-variant:normal;"
|
||||
x="52.745712"
|
||||
y="54.988724"
|
||||
id="text4969"
|
||||
@@ -223,7 +252,7 @@
|
||||
y="54.988724">y</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:sans-serif;font-stretch:normal;font-variant:normal;"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:MathJax_Size1;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:MathJax_Size1;font-stretch:normal;font-variant:normal;"
|
||||
x="242.94995"
|
||||
y="261.97568"
|
||||
id="text4973"
|
||||
@@ -271,7 +300,7 @@
|
||||
sodipodi:open="true" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:15px;line-height:125%;font-family:sans-serif;-inkscape-font-specification:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:15px;line-height:125%;font-family:MathJax_Caligraphic;-inkscape-font-specification:MathJax_Caligraphic;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
x="354.63498"
|
||||
y="358.07678"
|
||||
id="text5154"
|
||||
@@ -280,11 +309,11 @@
|
||||
id="tspan5156"
|
||||
x="354.63498"
|
||||
y="358.07678">φ<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
style="font-size:64.99999762%;baseline-shift:sub;-inkscape-font-specification:MathJax_Size1;font-family:MathJax_Size1;font-weight:normal;font-style:normal;font-stretch:normal;font-variant:normal;"
|
||||
id="tspan5158">s</tspan></tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;baseline-shift:baseline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-weight:normal;line-height:125%;font-family:MathJax_Caligraphic;letter-spacing:0px;word-spacing:0px;baseline-shift:baseline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:MathJax_Caligraphic;font-stretch:normal;font-variant:normal;"
|
||||
x="383.2056"
|
||||
y="205.23409"
|
||||
id="text5188"
|
||||
@@ -293,63 +322,63 @@
|
||||
id="tspan5190"
|
||||
x="383.2056"
|
||||
y="205.23409">p<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
style="font-size:64.99999762%;baseline-shift:sub;-inkscape-font-specification:MathJax_Size1;font-family:MathJax_Size1;font-weight:normal;font-style:normal;font-stretch:normal;font-variant:normal;"
|
||||
id="tspan5192">e</tspan></tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="226.9664"
|
||||
y="401.83173"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:MathJax_Caligraphic;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:MathJax_Caligraphic;font-stretch:normal;font-variant:normal;"
|
||||
x="226.54257"
|
||||
y="405.36362"
|
||||
id="text5194"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5196"
|
||||
x="226.9664"
|
||||
y="401.83173">p<tspan
|
||||
style="font-size:65%;baseline-shift:sub"
|
||||
x="226.54257"
|
||||
y="405.36362">p<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub;-inkscape-font-specification:MathJax_Size1;font-family:MathJax_Size1;font-weight:normal;font-style:normal;font-stretch:normal;font-variant:normal;"
|
||||
id="tspan5198">s</tspan></tspan></text>
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text5200"
|
||||
y="177.46268"
|
||||
x="305.48557"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:15px;line-height:125%;font-family:sans-serif;-inkscape-font-specification:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:15px;line-height:125%;font-family:MathJax_Caligraphic;-inkscape-font-specification:MathJax_Caligraphic;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
|
||||
xml:space="preserve"><tspan
|
||||
y="177.46268"
|
||||
x="305.48557"
|
||||
id="tspan5202"
|
||||
sodipodi:role="line">φ<tspan
|
||||
id="tspan5204"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">e</tspan></tspan></text>
|
||||
style="font-size:64.99999762%;baseline-shift:sub;-inkscape-font-specification:MathJax_Size1;font-family:MathJax_Size1;font-weight:normal;font-style:normal;font-stretch:normal;font-variant:normal;">e</tspan></tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="513.47156"
|
||||
y="364.27039"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:MathJax_Caligraphic;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:MathJax_Caligraphic;font-stretch:normal;font-variant:normal;"
|
||||
x="78.080482"
|
||||
y="365.4006"
|
||||
id="text5206"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5208"
|
||||
x="513.47156"
|
||||
y="364.27039">y<tspan
|
||||
style="font-size:65%;baseline-shift:sub"
|
||||
x="78.080482"
|
||||
y="365.4006">y<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub;-inkscape-font-specification:MathJax_Size1;font-family:MathJax_Size1;font-weight:normal;font-style:normal;font-stretch:normal;font-variant:normal;"
|
||||
id="tspan5210">s</tspan></tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="458.32828"
|
||||
y="180.06"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:MathJax_Caligraphic;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:MathJax_Caligraphic;font-stretch:normal;font-variant:normal;"
|
||||
x="72.106689"
|
||||
y="183.77333"
|
||||
id="text5212"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan5214"
|
||||
x="458.32828"
|
||||
y="180.06">y<tspan
|
||||
style="font-size:65%;baseline-shift:sub"
|
||||
x="72.106689"
|
||||
y="183.77333">y<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub;-inkscape-font-specification:MathJax_Size1;font-family:MathJax_Size1;font-weight:normal;font-style:normal;font-stretch:normal;font-variant:normal;"
|
||||
id="tspan5216">e</tspan></tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:MathJax_Size1;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:MathJax_Size1;font-stretch:normal;font-variant:normal;"
|
||||
x="-44.847584"
|
||||
y="412.73996"
|
||||
id="text5218"
|
||||
@@ -358,10 +387,10 @@
|
||||
sodipodi:role="line"
|
||||
id="tspan5220"
|
||||
x="-44.847584"
|
||||
y="412.73996">crystal</tspan></text>
|
||||
y="412.73996">v crystal</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:MathJax_Caligraphic;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:MathJax_Caligraphic;font-stretch:normal;font-variant:normal;"
|
||||
x="271.81494"
|
||||
y="385.5397"
|
||||
id="text5222"
|
||||
@@ -370,11 +399,11 @@
|
||||
id="tspan5224"
|
||||
x="271.81494"
|
||||
y="385.5397">r<tspan
|
||||
style="font-size:65%;baseline-shift:sub"
|
||||
style="font-size:65%;baseline-shift:sub;-inkscape-font-specification:MathJax_Size1;font-family:MathJax_Size1;font-weight:normal;font-style:normal;font-stretch:normal;font-variant:normal;"
|
||||
id="tspan5226">s</tspan></tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:MathJax_Caligraphic;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:MathJax_Caligraphic;font-stretch:normal;font-variant:normal;"
|
||||
x="349.51669"
|
||||
y="192.83932"
|
||||
id="text5228"
|
||||
@@ -383,7 +412,516 @@
|
||||
id="tspan5230"
|
||||
x="349.51669"
|
||||
y="192.83932">r<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
style="font-size:64.99999762%;baseline-shift:sub;-inkscape-font-specification:MathJax_Size1;font-family:MathJax_Size1;font-weight:normal;font-style:normal;font-stretch:normal;font-variant:normal;"
|
||||
id="tspan5232">e</tspan></tspan></text>
|
||||
</g>
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4228"
|
||||
d="m 95.453991,425.98555 0,-252.06849"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.53547764;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<circle
|
||||
style="opacity:1;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="path4230"
|
||||
cx="95.573181"
|
||||
cy="182.52617"
|
||||
r="0.56510383" />
|
||||
<circle
|
||||
r="1.0897936"
|
||||
cy="423.94144"
|
||||
cx="95.394531"
|
||||
id="circle4232"
|
||||
style="opacity:1;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.92848384;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<circle
|
||||
style="opacity:1;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="circle4234"
|
||||
cx="95.414505"
|
||||
cy="364.47595"
|
||||
r="0.56510383" />
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text4236"
|
||||
y="176.86328"
|
||||
x="168.22685"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:MathJax_Caligraphic;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:MathJax_Caligraphic;font-stretch:normal;font-variant:normal;"
|
||||
xml:space="preserve"><tspan
|
||||
y="176.86328"
|
||||
x="168.22685"
|
||||
id="tspan4238"
|
||||
sodipodi:role="line">x<tspan
|
||||
id="tspan4240"
|
||||
style="font-size:64.99999762%;baseline-shift:sub;-inkscape-font-specification:MathJax_Size1;font-family:MathJax_Size1;font-weight:normal;font-style:normal;font-stretch:normal;font-variant:normal;">e</tspan></tspan></text>
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text4242"
|
||||
y="360.27451"
|
||||
x="178.6162"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:MathJax_Caligraphic;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-font-specification:MathJax_Caligraphic;font-stretch:normal;font-variant:normal;"
|
||||
xml:space="preserve"><tspan
|
||||
y="360.27451"
|
||||
x="178.6162"
|
||||
id="tspan4244"
|
||||
sodipodi:role="line">x<tspan
|
||||
id="tspan4246"
|
||||
style="font-size:64.99999762%;baseline-shift:sub;-inkscape-font-specification:MathJax_Size1;font-family:MathJax_Size1;font-weight:normal;font-style:normal;font-stretch:normal;font-variant:normal;">s</tspan></tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.93431133px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 227.50298,395.59134 7.00627,0 -3.10069,-2.33388"
|
||||
id="path4248"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4262"
|
||||
d="m 384.17801,196.53353 7.00627,0 -3.10069,-2.33388"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.93431133px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.93431133px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 275.11314,296.37008 4.97745,-4.93079 -3.84533,0.52411"
|
||||
id="path4264"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4266"
|
||||
d="m 89.507876,423.95904 383.205594,0"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.66023415;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<flowRoot
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="flowRoot4323"
|
||||
xml:space="preserve"><flowRegion
|
||||
id="flowRegion4325"><rect
|
||||
y="520.59955"
|
||||
x="189.87488"
|
||||
height="18.648426"
|
||||
width="71.768181"
|
||||
id="rect4327" /></flowRegion><flowPara
|
||||
id="flowPara4329" /></flowRoot> <flowRoot
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="flowRoot4331"
|
||||
xml:space="preserve"><flowRegion
|
||||
id="flowRegion4333"><rect
|
||||
y="505.90683"
|
||||
x="113.58587"
|
||||
height="21.473946"
|
||||
width="188.17957"
|
||||
id="rect4335" /></flowRegion><flowPara
|
||||
id="flowPara4337" /></flowRoot> <text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text4339"
|
||||
y="541.96143"
|
||||
x="101.44707"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
xml:space="preserve"><tspan
|
||||
id="tspan3453"
|
||||
y="541.96143"
|
||||
x="101.44707"
|
||||
sodipodi:role="line">coord transformation:</tspan><tspan
|
||||
y="560.71143"
|
||||
x="101.44707"
|
||||
sodipodi:role="line"
|
||||
id="tspan3553">input ω,y,d<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan3557">x</tspan>,d<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan3559">z</tspan></tspan><tspan
|
||||
y="579.46143"
|
||||
x="101.44707"
|
||||
sodipodi:role="line"
|
||||
id="tspan3555">output: ω,x,y,z,</tspan><tspan
|
||||
y="598.21143"
|
||||
x="101.44707"
|
||||
sodipodi:role="line"
|
||||
id="tspan3541" /><tspan
|
||||
y="616.96143"
|
||||
x="101.44707"
|
||||
sodipodi:role="line"
|
||||
id="tspan3561">d<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan3573">x</tspan>,d<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan3575">z</tspan> are translation from the vector v after rotation</tspan><tspan
|
||||
y="635.71143"
|
||||
x="101.44707"
|
||||
sodipodi:role="line"
|
||||
id="tspan3563" /><tspan
|
||||
y="654.46143"
|
||||
x="101.44707"
|
||||
sodipodi:role="line"
|
||||
id="tspan3547" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="101.0957"
|
||||
y="514.2149"
|
||||
id="text3461"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
id="tspan3475"
|
||||
sodipodi:role="line"
|
||||
x="101.0957"
|
||||
y="514.2149">known values after fft: y<tspan
|
||||
id="tspan3473"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">s</tspan>, r<tspan
|
||||
id="tspan3471"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">s</tspan>, x<tspan
|
||||
id="tspan3469"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">s</tspan>, φ<tspan
|
||||
id="tspan3467"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">s, </tspan>y<tspan
|
||||
id="tspan3483"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">e</tspan>, r<tspan
|
||||
id="tspan3481"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">e</tspan>, x<tspan
|
||||
id="tspan3479"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">e</tspan>, φ<tspan
|
||||
id="tspan3477"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">e</tspan></tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:15px;line-height:125%;font-family:MathJax_Size1;-inkscape-font-specification:MathJax_Size1;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="144.66656"
|
||||
y="538.11774"
|
||||
id="text4297"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4315"
|
||||
x="144.66656"
|
||||
y="538.11774" /></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:15px;line-height:125%;font-family:MathJax_Caligraphic;-inkscape-font-specification:MathJax_Caligraphic;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="236.54291"
|
||||
y="102.86897"
|
||||
id="text4317"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4319"
|
||||
x="236.54291"
|
||||
y="102.86897"
|
||||
style="-inkscape-font-specification:sans-serif;font-family:sans-serif;font-weight:normal;font-style:normal;font-stretch:normal;font-variant:normal">φ<tspan
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:64.99999762%;font-family:sans-serif;-inkscape-font-specification:sans-serif;baseline-shift:sub"
|
||||
id="tspan4321">e</tspan></tspan></text>
|
||||
<g
|
||||
id="g3643"
|
||||
transform="translate(-15.455292,12.364234)">
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="110.69898"
|
||||
y="732.79047"
|
||||
id="text4359"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4361"
|
||||
x="110.69898"
|
||||
y="732.79047">v=p<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan4365">e</tspan>-p<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan4363">s</tspan></tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.93431133px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 111.88677,722.10095 7.00627,0 -3.10069,-2.33388"
|
||||
id="path3533"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3535"
|
||||
d="m 133.33099,721.71457 7.00627,0 -3.10069,-2.33388"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.93431133px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.93431133px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 153.61606,721.32819 7.00627,0 -3.10069,-2.33388"
|
||||
id="path3537"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<flowRoot
|
||||
xml:space="preserve"
|
||||
id="flowRoot3565"
|
||||
style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:sans-serif;font-style:normal;font-weight:normal;font-size:15px;line-height:125%;letter-spacing:0px;word-spacing:0px"><flowRegion
|
||||
id="flowRegion3567"><rect
|
||||
id="rect3569"
|
||||
width="286.32782"
|
||||
height="195.07448"
|
||||
x="25.135647"
|
||||
y="572.0528" /></flowRegion><flowPara
|
||||
id="flowPara3571"></flowPara></flowRoot> <g
|
||||
id="g3873"
|
||||
transform="translate(6.9548817,-37.092702)">
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text4371"
|
||||
y="717.19385"
|
||||
x="69.084023"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
xml:space="preserve"><tspan
|
||||
y="717.19385"
|
||||
x="69.084023"
|
||||
id="tspan4373"
|
||||
sodipodi:role="line">p<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan3936">s</tspan>(ω)=</tspan></text>
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text4377"
|
||||
y="697.47852"
|
||||
x="131.08328"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
xml:space="preserve"><tspan
|
||||
y="697.47852"
|
||||
x="131.08328"
|
||||
id="tspan4395"
|
||||
sodipodi:role="line">x<tspan
|
||||
id="tspan4403"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">s</tspan>+r<tspan
|
||||
id="tspan4401"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">s</tspan>·cos(φ<tspan
|
||||
id="tspan4399"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">s</tspan>+ω)</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="131.06863"
|
||||
y="738.32257"
|
||||
id="text4405"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4407"
|
||||
x="131.06863"
|
||||
y="738.32257">y<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan4409">s</tspan>+r<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan4411">s</tspan>·sin(φ<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan4413">s</tspan>+ω)</tspan></text>
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3539"
|
||||
d="m 70.722918,706.18924 7.00627,0 -3.10069,-2.33388"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.93431133px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text3654"
|
||||
y="716.3075"
|
||||
x="131.06863"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
xml:space="preserve"><tspan
|
||||
y="716.3075"
|
||||
x="131.06863"
|
||||
id="tspan3656"
|
||||
sodipodi:role="line">y<tspan
|
||||
id="tspan3658"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">s</tspan></tspan></text>
|
||||
<path
|
||||
sodipodi:nodetypes="ccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3728"
|
||||
d="m 131.51542,681.3388 -5.40935,0 0,63.3667 5.21616,0 0,0"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 252.55505,681.33881 5.40935,0 0,63.3667 -5.21616,0 0,0"
|
||||
id="path3730"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
</g>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="84.446236"
|
||||
y="857.24939"
|
||||
id="text3732"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
id="tspan3742"
|
||||
sodipodi:role="line"
|
||||
x="84.446236"
|
||||
y="857.24939">output:</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="84.446236"
|
||||
y="875.99939"
|
||||
id="tspan3763">ω=ω</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="84.446236"
|
||||
y="894.74939"
|
||||
id="tspan3765">x=p<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan3778">sx</tspan>+v<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan3780">x</tspan>(y)+d<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan3782">x</tspan></tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="84.446236"
|
||||
y="913.49939"
|
||||
id="tspan3767">y=y</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="84.446236"
|
||||
y="932.24939"
|
||||
id="tspan3769">z=p<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan3784">sy</tspan>+v<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan3786">z</tspan>(y)+d<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan3788">z</tspan></tspan><tspan
|
||||
id="tspan3752"
|
||||
sodipodi:role="line"
|
||||
x="84.446236"
|
||||
y="950.99939" /><tspan
|
||||
id="tspan3754"
|
||||
sodipodi:role="line"
|
||||
x="84.446236"
|
||||
y="969.74939" /></text>
|
||||
<g
|
||||
id="g3894"
|
||||
transform="translate(10.818705,-53.32076)">
|
||||
<g
|
||||
transform="translate(-86.356448,64.943501)"
|
||||
id="g3624">
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="280.89734"
|
||||
y="797.20612"
|
||||
id="text4417"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4419"
|
||||
x="280.89734"
|
||||
y="797.20612">v ·(y<tspan
|
||||
id="tspan3641"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">e</tspan>-y<tspan
|
||||
id="tspan3639"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">s</tspan>)</tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.07920456px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 355.31423,784.61292 -80.18818,0"
|
||||
id="path3598"
|
||||
inkscape:connector-curvature="0" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="286.20889"
|
||||
y="778.62811"
|
||||
id="text3600"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3602"
|
||||
x="286.20889"
|
||||
y="778.62811">v·(y-y<tspan
|
||||
id="tspan3637"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">s</tspan>)</tspan></text>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.93431133px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 286.23752,769.09771 7.00627,0 -3.10069,-2.33388"
|
||||
id="path3608"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 278.81444,787.34506 0,11.74818"
|
||||
id="path3620"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 291.79208,787.07185 0,12.56782"
|
||||
id="path3622"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3938"
|
||||
d="m 281.37064,787.95979 7.00627,0 -3.10069,-2.33388"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.93431133px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.93431133px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 161.83971,777.23616 7.00627,0 -3.10069,-2.33388"
|
||||
id="path3940"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
transform="translate(55.189138,4.917844)"
|
||||
id="g3860">
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text3790"
|
||||
y="827.30298"
|
||||
x="70.195465"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
xml:space="preserve"><tspan
|
||||
y="827.30298"
|
||||
x="70.195465"
|
||||
id="tspan3792"
|
||||
sodipodi:role="line">v<tspan
|
||||
id="tspan3796"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">x</tspan>(y)</tspan></text>
|
||||
<path
|
||||
sodipodi:nodetypes="ccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3816"
|
||||
d="m 72.552308,811.16326 -5.40935,0 0,63.3667 5.21616,0 0,0"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 107.80288,812.25612 5.40935,0 0,63.3667 -5.21616,0 0,0"
|
||||
id="path3818"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="70.195465"
|
||||
y="846.34308"
|
||||
id="text3820"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3822"
|
||||
x="70.195465"
|
||||
y="846.34308">v<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan3824">y</tspan>(y)</tspan></text>
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text3826"
|
||||
y="867.29114"
|
||||
x="70.519196"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
xml:space="preserve"><tspan
|
||||
y="867.29114"
|
||||
x="70.519196"
|
||||
id="tspan3828"
|
||||
sodipodi:role="line">v<tspan
|
||||
id="tspan3830"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">z</tspan>(y)</tspan></text>
|
||||
</g>
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text3832"
|
||||
y="852.44177"
|
||||
x="74.771553"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
xml:space="preserve"><tspan
|
||||
y="852.44177"
|
||||
x="74.771553"
|
||||
id="tspan3834"
|
||||
sodipodi:role="line">v(y)=</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="170.94273"
|
||||
y="853.00574"
|
||||
id="text3848"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3850"
|
||||
x="170.94273"
|
||||
y="853.00574">=</tspan></text>
|
||||
</g>
|
||||
<flowRoot
|
||||
xml:space="preserve"
|
||||
id="flowRoot3852"
|
||||
style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:sans-serif;font-style:normal;font-weight:normal;font-size:15px;line-height:125%;letter-spacing:0px;word-spacing:0px"><flowRegion
|
||||
id="flowRegion3854"><rect
|
||||
id="rect3856"
|
||||
width="27.321356"
|
||||
height="54.642712"
|
||||
x="56.828419"
|
||||
y="805.37714" /></flowRegion><flowPara
|
||||
id="flowPara3858"></flowPara></flowRoot> </g>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 44 KiB |
@@ -139,15 +139,15 @@
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="1"
|
||||
inkscape:cx="441.16057"
|
||||
inkscape:cy="535.19697"
|
||||
inkscape:zoom="1.0341797"
|
||||
inkscape:cx="610.03809"
|
||||
inkscape:cy="581.42706"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
inkscape:window-width="1871"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1176"
|
||||
inkscape:window-x="49"
|
||||
inkscape:window-x="1920"
|
||||
inkscape:window-y="24"
|
||||
inkscape:window-maximized="1"
|
||||
showguides="true"
|
||||
@@ -162,10 +162,6 @@
|
||||
id="grid5704"
|
||||
spacingx="10"
|
||||
spacingy="10" />
|
||||
<sodipodi:guide
|
||||
position="99.348502,347.54298"
|
||||
orientation="0,1"
|
||||
id="guide5724" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata7">
|
||||
@@ -175,7 +171,7 @@
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
@@ -422,7 +418,7 @@
|
||||
height="226.04152"
|
||||
x="-48.598927"
|
||||
y="-3.2517097" /></flowRegion><flowPara
|
||||
id="flowPara5602"></flowPara></flowRoot> <path
|
||||
id="flowPara5602" /></flowRoot> <path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.02096951px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 307.54664,726.11726 0,-467.70736"
|
||||
id="path5658"
|
||||
@@ -474,5 +470,71 @@
|
||||
cx="279.46121"
|
||||
id="circle5722"
|
||||
style="opacity:1;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="76.389046"
|
||||
y="838.66626"
|
||||
id="text3406"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3408"
|
||||
x="76.389046"
|
||||
y="838.66626">fft of at least 3 values x0 x1 x2</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="76.389046"
|
||||
y="857.41626"
|
||||
id="tspan3412">the fft returns the bias value, phase and amplitude</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="76.389046"
|
||||
y="876.16626"
|
||||
id="tspan3410">known values after fft: x<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan3414">bias</tspan>, r, φ</tspan><tspan
|
||||
sodipodi:role="line"
|
||||
x="76.389046"
|
||||
y="894.91626"
|
||||
id="tspan3416">x(t)=x<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan3418">bias</tspan>+r·cos(ω·t-φ)</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="248.02266"
|
||||
y="706.67761"
|
||||
id="text3420"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3422"
|
||||
x="248.02266"
|
||||
y="706.67761">φ<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan3424">0</tspan></tspan></text>
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text3426"
|
||||
y="645.27631"
|
||||
x="180.81964"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
xml:space="preserve"><tspan
|
||||
y="645.27631"
|
||||
x="180.81964"
|
||||
id="tspan3428"
|
||||
sodipodi:role="line">φ<tspan
|
||||
id="tspan3430"
|
||||
style="font-size:64.99999762%;baseline-shift:sub">1</tspan></tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:15px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
x="395.966"
|
||||
y="584.84198"
|
||||
id="text3432"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan3434"
|
||||
x="395.966"
|
||||
y="584.84198">φ<tspan
|
||||
style="font-size:64.99999762%;baseline-shift:sub"
|
||||
id="tspan3436">2</tspan></tspan></text>
|
||||
</g>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 23 KiB |
Reference in New Issue
Block a user