Releases: goodluck1982/SpaceGroupIrep
Releases · goodluck1982/SpaceGroupIrep
v1.2.8
Add reality for point group ireps.
Affect getPGCharTab, showPGCharTab, getPGIrepTab, showPGIrepTab.
Change the method to adjust the width of the E column in showPGCharTab,
because the old method makes E misaligned in the row of the exported pdf file.
Adjust the colume width of irep label for PG ireps.
v1.2.7
The fix in 1.2.6 is not good. The change from Simplify to FullSimplify
in num=Simplify[mat] will cause new problem.
((-I/2)*(-I + Sqrt[3]))/Sqrt[2]//FullSimplify will gives Root[1+2 #1^2+4 #1^4&,1]
Change back to Simplify. Add a judgement for the zero norm case to calculate Arg.
v1.2.6
Fix a bug in formatRepMat which returns Indeterminate:
(-1+I)/4*((2+2*I)*(-1)^(11/12)+I*Sqrt[2]+Sqrt[6])//formatRepMat
An example affected by this is the following MSGCorep function:
showMLGCorep[{222, 100},{-1/3,2/3,1/4},"trace"->True]
The reason is that Simplify can not simplify the above number which is indeed 0.
Just change the Simplify in formatRepMat to FullSimplify to fix it.
v1.2.5
Add a function showBandRep to show the result of getBandRep.
Add an option "generationProcess" to generateGroup.
v1.2.4
Make the following four functions can multiply more than two elements:
SeitzTimes, DSGSeitzTimes, RotTimes, DRotTimes
v1.2.3
Fix a bug in identifyBCHSKptBySG for the critical case of u==umax with
"allowtwok"->True and given numerical basic vectors.
Add SpaceGroupIrep`Private`Version to store version.
Add generateLibLGIrep, RotMatCart and getPGElem.
Add "DSG" option to getSGElem.
v1.2.2
Update the allBCSkLGdat.mx_RaspberryPi file for raspberry pi and README.md.
Update error tips for WSCell3DMesh and showBZDemo. Because these two
functions cannot work correctly in mathematica v12.2 and v12.3 due to bugs
in the built-in function DelaunayMesh.
v1.2.1
Update the irep labels for double point groups.
Make them consistent with the Table 6.5 in the BC book.
v1.2.0
New: point group support!
Add:
- Add a function SGSymScho[] to obtain the Schoenflies symbol of space group.
- Add two functions for abstract group: getAGClassesByGen and showAGCharTabByGen
- Add functions to calculate the multiplication, power, and inversion
of rotations by their name strings defined in the BC book.
These functions are:
RotTimes, powerRot, invRot, DRotTimes, powerDRot, invDRot
Add a form of calling SpinRotTimes which is equivalent to DRotTimes. - Add a function str2Mulliken to onvert the text string to the Mulliken form string.
- Add a function showRot to show the symbol of a rotation name string.
- Add a List PGinfo to store the information of the 32 point groups and
a function showPGinfo to show the point groups. - Add functions Mulliken2str, str2GammaLabel, and GammaLabel2str
- Add support for ireps of point groups, including getting and showing
the character tables, irep matrices, and direct products of ireps.
New functions:
getPGCharTab, getPGIrepTab, PGIrepDirectProduct
showPGCharTab, showPGIrepTab, showPGIrepDirectProduct
Fix:
- Fix a typo in autoConvTraceToBC: sym["R"].S ==> S.sym["R"]
- Fix a tiny bug in getBCsymmetry.py
- Add DeleteObject[ss] after using python external session.
Change:
- Update showSGSym[] function to support Schoenflies symbol and add an
option "ncol" to showSGSym[]. - Change the option CompressDegeneracy of getBandRep to "CompressDegeneracy".
- Adjust the style of axis labels of showBZDemo.
- Small adjustments to the appearance of classes in
showAGCharTab and showAGCharTabByGen. - Delete the spaces in the Mulliken form strings in LGIrepLabel and DLGIrepLabel.
v1.1.0
Add new function: getKStar[sgno,kin]
Bug fix:
1. findURange and identifyBCHSKptBySG:
The umax in the followings cases is 1/4, not 1/2.
"OrthBody": "P","D","Q"; "TetrBody": "W","Q";
"CubiFace": "Z","Q"; "CubiBody": "D"
2. identifyBCHSKpt: Add an option "selectNoTranslation"->False
This makes sure that k-points differing by integers all have the same {S|w}.
Or else, the old behavior (<=v1.0.4) is as following
identifyBCHSKpt["OrthFace(a)",{-0.1,-0.6,-0.5}][[2]] gives
{{-0.1,-0.6,-0.5},"H","YH","C2v",{u,-(1/2)+u,-(1/2)},"C2y",{-u,-(1/2)-u,-(1/2)},{0,0,0},u->0.1}
identifyBCHSKpt["OrthFace(a)",{ 0.9,-0.6,-0.5}][[2]] gives
{{ 0.9,-0.6,-0.5},"H","YH","C2v",{u,-(1/2)+u,-(1/2)},"C2x",{-u,1/2-u,1/2},{1,-1,-1},u->0.1}
3. identifyBCHSKpt["HexaPrim",{4/5,1/10,1/2}] should return two items "S" and "S'",
4. getLGIrepTab and getBandRep:
For "H" in "OrthBase" and "G", "F", "U" in "OrthBody", the same BC-standard coordiantes
should be used for all BZ types in order to avoid different IRs for the same label.
In practice, only the coordinates of (a) type of BZ is used.
5. autoConvTraceToBC: Fix a bug relating to numerical precision.
Change:
1. showLGIrepTab and showSGIrepTab now give the SG symbol conforming to the BC
orientation if it is different with the standard symbol.
2. Add an option "showdim" to getBandRep. Its default value is True. When it's
False, the dimension and the parentheses following the LGIR label is not shown.
3. The output of krepBCStoBC and showKrepBCStoBC will change in some cases
due to the issue of the above bug 4.
For the changed cases, see the file doc/BCStoBC-change.pdf.
Add a python tool "getBCsymmetry.py" to analyze the space group symmetries of
vasp POSCAR file or cif file and convert the structure to BC convention.