Analyzer
[1]:
import nexus as nx
import numpy as np
# set beam along pi polarization via initialization parameters
# those values are the default arguments
analyzer = nx.Analyzer(efficiency = 1, mixing_angle = 0, canting_angle = 90)
print(analyzer.matrix)
[[0.000000e+00+0.j 6.123234e-17+0.j]
[6.123234e-17+0.j 1.000000e+00+0.j]]
[2]:
analyzer = nx.Analyzer()
analyzer.CircularLeft()
print(analyzer.matrix)
[[ 0.5+0.j -0. -0.5j]
[ 0. +0.5j 0.5+0.j ]]
[3]:
analyzer.SetJonesMatrix(np.array([[1,0], [0,1]], dtype=complex))
print(analyzer.matrix)
[[1.+0.j 0.+0.j]
[0.+0.j 1.+0.j]]
[4]:
print(analyzer.ElectronicAmplitudeMatrix(0))
[[1.+0.j 0.+0.j]
[0.+0.j 1.+0.j]]
[5]:
analyzer.SetJonesMatrix(np.array([[1,0], [0,0]], dtype=complex))
print(analyzer.matrix)
[[1.+0.j 0.+0.j]
[0.+0.j 0.+0.j]]
[6]:
analyzer.Rotate(45)
print(analyzer)
Analyzer
.id:
.matrix:
[[0.5+0.j 0.5+0.j]
[0.5+0.j 0.5+0.j]]