-
Notifications
You must be signed in to change notification settings - Fork 0
atlytle/ClebschGordan
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
16 May, 2024 ------------ // Code written by Alex Arne, downloaded from // https://homepages.physik.uni-muenchen.de/ // ~vondelft/Papers/ClebschGordan/ClebschGordan.cpp Needed to install Lapack libraries sudo apt install libblas-dev liblapack-dev Compilation commands in Makefile This may be relevant if you try to port the code to Python: + https://stackoverflow.com/questions/76776727/ difference-in-values-returned-from-c-and-python-calling-the-same-underlying-la 24 May, 2024 ------------ Installed swig. Testing example from https://www.swig.org/Doc1.3/Python.html Minimal example works as advertised. 27 May, 2024 ------------ Extending swig example to ClebschGordan. Split header off from ClebschGordan.cpp. Expose binomial_t implementation to swig interface in ClebschGordan.i 28 May, 2024 ------------ Moved "binomial" object declaration to ClebschGordan.cpp. Needed to use dynamic linking [https://www.swig.org/Doc1.3/Python.html] to get Lapack libraries included. use_ClebschGordan.py works after build. 30 May, 2024 ------------ Include "weight" class in ClebschGordan.i. These are the function arguments to the downstream functions I want to use, so we need to be able to create these. This didn't work 'out of the box' because the C++ constructors don't set the weights directly, and python doesn't have access to memory. Instead introduced new get/set functionality. Thank you to Kevin Ingles for assistance with this. 02 June, 2024 ------------- Factorise use_ClebschGordan.py. Reproduces behavior of 5) Calculate Clebsch-Gordan coefficients for S x S' -> S'' of ClebschGordan.cpp 03 June, 2024 ------------- Set up comparisons between C++ code and sympy SU(2) CGs. 06 June, 2024 ------------- Start thinking about a port of the C++ code. Work in CGport.py. 08 June, 2024 ------------- Fixed error in in CG_swig() [m1<-->m2] in coeffs(m1, m2,..). This passed test_CG_swig() because I had only tested w1==w2. Generalized to CG_swig(w1, w2, w3), verified tests pass. 11 June, 2024 ------------- Wrapped C++ weight object in python Weight object to reduce boilerplate.
About
SU(N) CG coefficients. Python wrapper of C++ code.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published