Comments (3)
This is working great and I like log scale coloring. Thank you for impressive jobs. I believe we can close this.
from arc-alkali-rydberg-calculator.
Hi @kwnminho ,
Thank you for question! I will look tomorrow into more details about this, but here is a preliminary summary:
- Basis is expected to be bigger because M=m1+m2 is not anymore conserved for
theta
not equal 0. - I tried quickly reducing the basis by taking smaller detuning range - I see there is level shift but smaller than in case
theta = 0
. This can be expected. I should add something to more easily highlight relevant state. - If you work only at large distances (away from spaghetti region), you can use
getC6perturbatively
. Unfortunately, I see that I've introduced some bug in this function in recent updates, that breaks this function. I will fix this!
I will try to:
- fix mentioned bug;
- add clearer highlighting of the state; and
- check if there are any new beasts appearing.
Will write then with more info here.
from arc-alkali-rydberg-calculator.
Hi @kwnminho
I've pushed updates I wanted, and new version is available via pip.
For getting C6 quickly best is to use getC6perturbatively. E.g.
n0 = 97
l0 = 2
j0 = 2.5
phi = 0
dn = 10
deltaMax = 25e9
thetaList = np.linspace(0,2*np.pi,51)
mj = [2.5]
colourList = ["b","g","r"]
ax = plt.subplot(111, projection='polar')
ax.set_theta_zero_location("N")
line = []
for i in [0]:
calculation = PairStateInteractions(Rubidium(),
n0,l0,j0,n0,l0,j0,
mj[i], mj[i])
c6 = []
for t in thetaList:
C6=calculation.getC6perturbatively(t,phi, dn, deltaMax);
c6.append(abs(C6))
# plot results
lineLegend, = plt.plot(thetaList,c6,"-",
color=colourList[i],label=("mj=%d/2"%int(2*mj[i])))
line.append(lineLegend)
plt.legend(handles=line,fontsize=10)
plt.title("Rb, pairstate 97 $D_{5/2}$, $|C_6|$ in GHz $\mu$m$^{6}$",fontsize=10)
plt.show()
will give
For going to full pair-state calculation, as mentioned earlier, M=m1+m2 is not conserved anymore. Hence we need to include more states in the basis. This will slow down calculation, but, how many states you need to include ultimately depends on how close your atoms are. Unfortunately, there is no simple criteria - you have to include more states (larger principal quantum number range and energy range) until you are satisfied with experimental results. This is because in spaghetti region there some pair-state, originally far off from the considered one, can approach this state due to interactions.
Example of simple calculation, that uses highlighting on logarithmic scale added in the new version (see highlightScale), is
nRyd = 97
lRyd = 2
jRyd = 2.5
mjRyd = 2.5
calc1 = PairStateInteractions(Rubidium(),
nRyd, lRyd, jRyd,
nRyd, lRyd, jRyd,
mjRyd, mjRyd, interactionsUpTo=1)
theta = 0
calc1.defineBasis(theta, 0., 4, 5, 7e9)
rvdw = calc1.getLeRoyRadius()
calc1.diagonalise(np.linspace(rvdw,10.0,100),200,progressOutput=True)
calc1.plotLevelDiagram(highlightScale='log-2')
calc1.ax.set_xlim(rvdw,10.0,)
calc1.ax.set_ylim(-2,2)
calc1.showPlot()
produces
@kwnminho Let me know if this answers/helps with your question, so that this issue can be closed. Or otherwise, let me know if there are remaining problems.
from arc-alkali-rydberg-calculator.
Related Issues (20)
- getDipoleMatrixElement: wrong order of initial/final state arguments? HOT 1
- Usage question: obtaining C6 coefficients between two rydberg `s` states HOT 1
- (ARC 3.2) Two-photon excitation Rabi frequency (twoPhotonRydbergExcitation()) does not agree with the result of published paper HOT 3
- Numbers do not agree HOT 2
- online Atom Calculator offline HOT 1
- (ARC 3.2) Wrong HFS data for Na23 HOT 2
- Float vs. Int for Bz in StarkMap.defineBasis HOT 4
- Install Issue on MacOS HOT 4
- 'database is locked' for PairStateInteractions HOT 2
- Clarification of documentation in getBranchingRatio HOT 1
- C_6 perturbatively and form level diagram of hetero/homonuclear interactions HOT 2
- Inconsistent signs when adding polarizability contributions? HOT 2
- Problem with hyperfine state computations in 39 K HOT 1
- Query about the tranistion wavelength's calculated by the ARC package. HOT 2
- AC Stark Maps HOT 4
- getRadialMatrixElement() may return wrong results for float input parameters
- Add helper function to clarify citations
- Add flake8 linter and black formatter in CI checks
- Missing magic wavelength snippet in docs HOT 1
- AttributeError: module 'numpy' has no attribute 'int'. HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from arc-alkali-rydberg-calculator.