posym module
Project description
PoSym
A point symmetry analysis tool written in python designed for theoretical chemistry.
This tool makes use of continuous symmetry ideas to provide a robust implementation
to compute the symmetry of different objects. This library is designed to be easily
extendable to other objects by subclassing the SymmetryBase
class.
Features
- Use as simple calculator for irreducible representations supporting direct sum and product
- Determine symmetry of:
- normal modes
- functions defined in gaussian basis (molecular orbitals, electronic densities, operators)
- wave functions defined as a slater determinant
- wave functions defined as linear combination of slater determinants (Multi-reference/CI)
- Autogenerated high precision symmetry tables
- Compatibility with PyQchem (http://www.github.com/abelcarreras/pyqchem)
Requisites
- numpy
- scipy
- pandas
- yaml
Use as a simple symmetry calculation
Posym allows to create basic continuous symmetry python objects that can be operated using direct sum (+) and direct product (*).
from posym import PointGroup, SymmetryBase
pg = PointGroup(group='Td')
print(pg)
a1 = SymmetryBase(group='Td', rep='A1')
a2 = SymmetryBase(group='Td', rep='A2')
e = SymmetryBase(group='Td', rep='E')
t1 = SymmetryBase(group='Td', rep='T1')
print('t1 * t1:', t1 * t1)
print('t1 * e:', t1 * e)
print('e * (e + a1):', e * (e + a1))
Determine the symmetry of normal modes
Symmetry objects can be obtained from normal modes using SymmetryModes
.
from posym import SymmetryModes
coordinates = [[ 0.00000, 0.0000000, -0.0808819],
[-1.43262, 0.0000000, -1.2823700],
[ 1.43262, 0.0000000, -1.2823700]]
symbols = ['O', 'H', 'H']
normal_modes = [[[ 0., 0., -0.075],
[-0.381, -0., 0.593],
[ 0.381, -0., 0.593]], # mode 1
[[-0. , -0., 0.044],
[-0.613, -0., -0.35 ],
[ 0.613, 0., -0.35 ]], # mode 2
[[-0.073, -0., -0. ],
[ 0.583, 0., 0.397],
[ 0.583, 0., -0.397]]] # mode 3
frequencies = [1737.01, 3988.5, 4145.43]
sym_modes_gs = SymmetryModes(group='c2v', coordinates=coordinates, modes=normal_modes, symbols=symbols)
for i in range(len(normal_modes)):
print('Mode {:2}: {:8.3f} :'.format(i + 1, frequencies[i]), sym_modes_gs.get_state_mode(i))
print('Total symmetry: ', sym_modes_gs)
Define basis set functions in gaussian basis
Define basis function as linear combination of gaussian that act as normal python functions
from posym.basis import PrimitiveGaussian, BasisFunction
# Oxigen atom
sa = PrimitiveGaussian(alpha=130.70932)
sb = PrimitiveGaussian(alpha=23.808861)
sc = PrimitiveGaussian(alpha=6.4436083)
s_O = BasisFunction([sa, sb, sc],
[0.154328969, 0.535328136, 0.444634536],
center=[0.0000000000, 0.000000000, -0.0808819]) # Bohr
sa = PrimitiveGaussian(alpha=5.03315132)
sb = PrimitiveGaussian(alpha=1.1695961)
sc = PrimitiveGaussian(alpha=0.3803890)
s2_O = BasisFunction([sa, sb, sc],
[-0.099967228, 0.399512825, 0.700115461],
center=[0.0000000000, 0.000000000, -0.0808819])
pxa = PrimitiveGaussian(alpha=5.0331513, l=[1, 0, 0])
pxb = PrimitiveGaussian(alpha=1.1695961, l=[1, 0, 0])
pxc = PrimitiveGaussian(alpha=0.3803890, l=[1, 0, 0])
pya = PrimitiveGaussian(alpha=5.0331513, l=[0, 1, 0])
pyb = PrimitiveGaussian(alpha=1.1695961, l=[0, 1, 0])
pyc = PrimitiveGaussian(alpha=0.3803890, l=[0, 1, 0])
pza = PrimitiveGaussian(alpha=5.0331513, l=[0, 0, 1])
pzb = PrimitiveGaussian(alpha=1.1695961, l=[0, 0, 1])
pzc = PrimitiveGaussian(alpha=0.3803890, l=[0, 0, 1])
px_O = BasisFunction([pxa, pxb, pxc],
[0.155916268, 0.6076837186, 0.3919573931],
center=[0.0000000000, 0.000000000, -0.0808819])
py_O = BasisFunction([pya, pyb, pyc],
[0.155916268, 0.6076837186, 0.3919573931],
center=[0.0000000000, 0.000000000, -0.0808819])
pz_O = BasisFunction([pza, pzb, pzc],
[0.155916268, 0.6076837186, 0.3919573931],
center=[0.0000000000, 0.000000000, -0.0808819])
# Hydrogen atoms
sa = PrimitiveGaussian(alpha=3.42525091)
sb = PrimitiveGaussian(alpha=0.62391373)
sc = PrimitiveGaussian(alpha=0.1688554)
s_H = BasisFunction([sa, sb, sc],
[0.154328971, 0.535328142, 0.444634542],
center=[-1.43262, 0.000000000, -1.28237])
s2_H = BasisFunction([sa, sb, sc],
[0.154328971, 0.535328142, 0.444634542],
center=[1.43262, 0.000000000, -1.28237])
basis_set = [s_O, s2_O, px_O, py_O, pz_O, s_H, s2_H]
# Operate with basis functions in analytic form
px_O2 = px_O * px_O
print('integral from -inf to inf:', px_O2.integrate)
# plot functions
from matplotlib import pyplot as plt
import numpy as np
xrange = np.linspace(-5, 5, 100)
plt.plot(xrange, [s_O(x, 0, 0) for x in xrange] , label='s_O')
plt.plot(xrange, [px_O(x, 0, 0) for x in xrange] , label='px_O')
plt.legend()
Create molecular orbitals from basis set
Define molecular orbitals straightforwardly from molecular orbitals coefficients using usual operators
# Orbital 1
o1 = s_O * 0.994216442 + s2_O * 0.025846814 + px_O * 0.0 + py_O * 0.0 + pz_O * -0.004164076 + s_H * -0.005583712 + s2_H * -0.005583712
# Orbital 2
o2 = s_O * 0.23376666 + s2_O * -0.844456594 + px_O * 0.0 + py_O * 0.0 + pz_O * 0.122829781 + s_H * -0.155593214 + s2_H * -0.155593214
# Orbital 3
o3 = s_O * 0.0 + s2_O * 0.0 + px_O * 0.612692349 + py_O * 0.0 + pz_O * 0.0 + s_H * -0.44922168 + s2_H * 0.449221684
# Orbital 4
o4 = s_O * -0.104033343 + s2_O * 0.538153649 + px_O * 0.0 + py_O * 0.0 + pz_O * 0.755880259 + s_H * -0.295107107 + s2_H * -0.2951071074
# Orbital 5
o5 = s_O * 0.0 + s2_O * 0.0 + px_O * 0.0 + py_O * -1.0 + pz_O * 0.0 + s_H * 0.0 + s2_H * 0.0
# Orbital 6
o6 = s_O * -0.125818566 + s2_O * 0.820120983 + px_O * 0.0 + py_O * 0.0 + pz_O * -0.763538862 + s_H * -0.769155124 + s2_H * -0.769155124
# Check orthogonality
print('<o1|o1>: ', (o1*o1).integrate)
print('<o2|o2>: ', (o2*o2).integrate)
print('<o1|o2>: ', (o1*o2).integrate)
Analyze symmetry of molecular orbitals
Get symmetry of molecular orbitals defined as PrimitiveGaussian/BasisFunction
type objects
from posym import SymmetryFunction
sym_o1 = SymmetryFunction('c2v', o1)
sym_o2 = SymmetryFunction('c2v', o2)
sym_o3 = SymmetryFunction('c2v', o3)
sym_o4 = SymmetryFunction('c2v', o4)
sym_o5 = SymmetryFunction('c2v', o5)
sym_o6 = SymmetryFunction('c2v', o6)
print('Symmetry O1: ', sym_o1)
print('Symmetry O2: ', sym_o2)
print('Symmetry O3: ', sym_o3)
print('Symmetry O4: ', sym_o4)
print('Symmetry O5: ', sym_o5)
print('Symmetry O6: ', sym_o6)
# Operate molecular orbitals symmetries to get the symmetry of non-degenerate wave functions
# restricted close shell
sym_wf_gs = sym_o1*sym_o1 * sym_o2*sym_o2 * sym_o3*sym_o3 * sym_o4*sym_o4 * sym_o5*sym_o5
print('Symmetry WF (ground state): ', sym_wf_gs)
# restricted open shell
sym_wf_excited_1 = sym_o1*sym_o1 * sym_o2*sym_o2 * sym_o3*sym_o3 * sym_o4*sym_o4 * sym_o5*sym_o6
print('Symmetry WF (excited state 1): ', sym_wf_excited_1)
# restricted close shell
sym_wf_excited_2 = sym_o1*sym_o1 * sym_o2*sym_o2 * sym_o3*sym_o3 * sym_o4*sym_o4 * sym_o6*sym_o6
print('Symmetry WF (excited state 2): ', sym_wf_excited_2)
Combine with PyQchem to create useful automations
PyQchem (https://github.com/abelcarreras/PyQchem) is a Python interface for Q-Chem (https://www.q-chem.com). PyQchem can be used to obtain wave functions and normal modes as Python objects that can be directly used in Posym.
from pyqchem import get_output_from_qchem, QchemInput, Structure
from pyqchem.parsers.basic import basic_parser_qchem
from posym import SymmetryFunction
# convenient functions to connect pyqchem - posym
from posym.tools import get_basis_set, build_orbital
# define molecules
butadiene = Structure(coordinates=[[ -1.07076839, -2.13175980, 0.03234382],
[ -0.53741536, -3.05918866, 0.04995793],
[ -2.14073783, -2.12969357, 0.04016267],
[ -0.39112115, -0.95974916, 0.00012984],
[ 0.67884827, -0.96181542, -0.00769025],
[ -1.15875076, 0.37505495, -0.02522296],
[ -0.62213437, 1.30041753, -0.05065831],
[ -2.51391203, 0.37767199, -0.01531698],
[ -3.04726506, 1.30510083, -0.03293196],
[ -3.05052841, -0.54769055, 0.01011971]],
symbols=['C', 'H', 'H', 'C', 'H', 'C', 'H', 'C', 'H', 'H'])
# create qchem input
qc_input = QchemInput(butadiene,
jobtype='sp',
exchange='hf',
basis='sto-3g',
)
# calculate and parse qchem output
data, ee = get_output_from_qchem(qc_input,
read_fchk=True,
processors=4,
parser=basic_parser_qchem)
# extract required information from Q-Chem calculation
coordinates = ee['structure'].get_coordinates()
mo_coefficients = ee['coefficients']['alpha']
basis = ee['basis']
# print results
print('Molecular orbitals (alpha) symmetry')
basis_set = get_basis_set(coordinates, basis)
for i, orbital_coeff in enumerate(mo_coefficients):
orbital = build_orbital(basis_set, orbital_coeff)
sym_orbital = SymmetryFunction('c2v', orbital)
print('Symmetry O{}: '.format(i+1), sym_orbital)
Compute the symmetry of wave functions defined as a Slater determinant
Use SymmetryWaveFunction
class to determine the symmetry of a wave function
from a set of occupied molecular orbitals defined as BasisFunction
objects
from posym import SymmetryWaveFunction
from posym.tools import build_orbital
# get orbitals from basis set and MO coefficients
orbital1 = build_orbital(basis_set, coefficients['alpha'][0]) # A1
orbital2 = build_orbital(basis_set, coefficients['alpha'][1]) # A1
orbital3 = build_orbital(basis_set, coefficients['alpha'][2]) # T1
orbital4 = build_orbital(basis_set, coefficients['alpha'][3]) # T1
orbital5 = build_orbital(basis_set, coefficients['alpha'][4]) # T1
wf_sym = SymmetryWaveFunction('Td',
alpha_orbitals=[orbital1, orbital2, orbital5],
beta_orbitals=[orbital1, orbital2, orbital4],
center=[0, 0, 0])
print('Configuration 1: ', wf_sym) # T1 + T2
wf_sym = SymmetryWaveFunction('Td',
alpha_orbitals=[orbital1, orbital2, orbital3],
beta_orbitals=[orbital1, orbital2, orbital3],
center=[0, 0, 0])
print('Configuration 2: ', wf_sym) # A1 + E
Compute the symmetry of multi-reference wave functions
Use SymmetryWaveFunctionCI
class to determine the symmetry of multi-reference wave function
(defined as a liner combination of Slater determinants) from a set of
occupied molecular orbitals defined as BasisFunction
objects and a configurations dictionary.
from posym import SymmetryWaveFunctionCI
configurations = [{'amplitude': -0.03216, 'occupations': {'alpha': [1, 1, 0, 0, 1], 'beta': [1, 1, 1, 0, 0]}},
{'amplitude': 0.70637, 'occupations': {'alpha': [1, 1, 0, 1, 0], 'beta': [1, 1, 1, 0, 0]}},
{'amplitude': 0.03216, 'occupations': {'alpha': [1, 1, 1, 0, 0], 'beta': [1, 1, 0, 0, 1]}},
{'amplitude': -0.70637, 'occupations': {'alpha': [1, 1, 1, 0, 0], 'beta': [1, 1, 0, 1, 0]}}]
wf_sym = SymmetryWaveFunctionCI('Td',
orbitals=[orbital1, orbital2, orbital3, orbital4, orbital5],
configurations=configurations,
center=[0, 0, 0])
print('State 1: ', wf_sym) # T1
Try an interactive example in Google Colab
Contact info
Abel Carreras
abelcarreras83@gmail.com
Donostia International Physics Center (DIPC)
Donostia-San Sebastian (Spain)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for posym-0.2.7-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 437fadbccc5740656e6171898581ef06c8885b610d0d10ab2b6ed0fccadc9190 |
|
MD5 | 5dde8cc4c688d20d1a45ad705b857a8d |
|
BLAKE2b-256 | b146e074aa0e95cc6ecc63eee42ac8c723ba306978c145e3e312cd7c6a43aa1a |
Hashes for posym-0.2.7-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 87457d2123cdedf97236e8c4fc653f9667613242d5cd78c2954b81b5d2c76b28 |
|
MD5 | 5567900762ad0597b49e4e98b525e6d7 |
|
BLAKE2b-256 | 673c012600ebe5bd7870867e9417c3ddc5aa78ed9f9d257e40b1da44d7798891 |
Hashes for posym-0.2.7-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab0fae27dc7f2f6cd5962f57ecb3ee0670b1b415239f2c537d4cead7e78b75d5 |
|
MD5 | b7c881e9b79801a685ae56c788a3894c |
|
BLAKE2b-256 | 23b182d59d6a9b38258446b3e27d490fc82dde320b4d6803d33a517e414d7736 |
Hashes for posym-0.2.7-cp310-cp310-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 26914d939c9b72a8ee3fc9c56f1586062428b1360472cf8b6a65f0edff89c577 |
|
MD5 | f9901e57da796c534f24006c67063dd2 |
|
BLAKE2b-256 | 57c0cffb314234a883283204fcda1f6cdc3bc78f9dbae0bde89620ed751bf0e2 |
Hashes for posym-0.2.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6ecae720264ac2c9fddbf08c11902987e3d5d483224635c2b097c5c84f30ed1f |
|
MD5 | c8718a2f19418344f729b44f5334b3a9 |
|
BLAKE2b-256 | 9fcfdbafdcfcaf921f57d864f70cf995e677c398fac65e5c8f55674a1cc74b69 |
Hashes for posym-0.2.7-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2dc861cb707f781efa1438a1d2c3e4c37d2fe2ff08a862cdb12bc1cdd28e3b20 |
|
MD5 | 711449bb08bdb262f86044f7810cfef9 |
|
BLAKE2b-256 | 64499f33ee1c6826a6c2f88fa58b253277e584f24e60288e3cddd050e72f5c90 |
Hashes for posym-0.2.7-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 00fea1527be129a376b39eddc227ca3644047c376a8134e25d185eb70ffd64bd |
|
MD5 | f52957825bf8efadbed644c17f8ae4e3 |
|
BLAKE2b-256 | c872662e726ddfe675573d0d7bd967a16e3a664d5ca23c5c3f97aad7c5ef413e |
Hashes for posym-0.2.7-cp310-cp310-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e7413fd3b75a399b3199f130c6e7f337dd23bce3e33173d9606a680dd8090de1 |
|
MD5 | ff887414dd9487f2b66b82a66809c9bf |
|
BLAKE2b-256 | 60bd591f7f1eb73d4a49e2a966bf011f65bd1bd9f7acd492000042aed459b39a |
Hashes for posym-0.2.7-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7b3f081369e37ce50e41f0525e2ecb552bc1424116f7efc0ef0d8f6807e24bdf |
|
MD5 | dd844cdf32c702b2920d2d8c8675fd66 |
|
BLAKE2b-256 | 90207917c9a5cd54f8c70e888940168464ae242c56230b2b46d9a7ba668bb52a |
Hashes for posym-0.2.7-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 571e4ca0e4dde1fa17606ef0a64cce02dd910ba2f10b463ea6f335fae6d823b3 |
|
MD5 | 8dea96bb0e97dfb798dbabb4d4b1f986 |
|
BLAKE2b-256 | 32467cefbe7ac51c7bd4d2790049d6a050917145612d552e83bc8466bdae6ee2 |
Hashes for posym-0.2.7-cp39-cp39-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2333f31a09743b006e0d513bba861f13fe448a26a9eda994ea3d1ddabe5807a3 |
|
MD5 | b3fb82b4cfabd9b4b809218e21d78091 |
|
BLAKE2b-256 | 3247326cb34a1e68e9be4f04106360c628708858ce19ca8620e4ba5b071c7baa |
Hashes for posym-0.2.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0cd5c1205fb5305e486b2aecf733a85f66d461be666c1b1a0ab99d8c16c5adb3 |
|
MD5 | 3f7b95bf35136e5f7219c3d67c6fe1f8 |
|
BLAKE2b-256 | 55f462675f1a4b853f94604c2ddcd014111402af69e11def18a115d7febd9f81 |
Hashes for posym-0.2.7-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8e7915f7d4cc43270a0f99e94fe96a6bc4abfcfd2c0887d7ceb694ceb7f67591 |
|
MD5 | 02546ae1a16a188a2a7eef72af233508 |
|
BLAKE2b-256 | 558983f44a1b425143e84e6e9ae78ade7906135c42253661e4836e490de84eb9 |
Hashes for posym-0.2.7-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 34f4bd3aca5b96f4c190494def124ca6e52cd5d6c1ab79c42ab58255fbb22825 |
|
MD5 | 04a2b93d78bf79497172e67c6247742f |
|
BLAKE2b-256 | cb056c21db0f5aa1cc8f5bda63fee9b8abc995104b03de1ac61e273ee3dc3b1c |
Hashes for posym-0.2.7-cp39-cp39-macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 324093ffcaec7433a3bd87fa2941c9e21e62bfe1d305ac92b486d2f8488f4427 |
|
MD5 | b4be2ec251acb3f4265e98bae9015b37 |
|
BLAKE2b-256 | 5b2062e5f3fe258976dca8cfc5fec110868e84bd2bbabed777f3b5d829e73cc6 |
Hashes for posym-0.2.7-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2c3abf940744ce638b14a14f867fb17e5c5aa3bcd7b6a5284861e7344f202fd3 |
|
MD5 | d926abcbd92ad89a857342ff32d7c81e |
|
BLAKE2b-256 | 0aba99b136a050fa2be4ebf9234ea20013d4f53d8d4c26c0a15da844652a88f9 |
Hashes for posym-0.2.7-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fe6655bbb67670839470be49311381102bf7d6e78e30652ed5d92e8971363beb |
|
MD5 | 695a7be76a1052b6de7d9d83cc76fe35 |
|
BLAKE2b-256 | 0733ea771c291185480ccf9430c1b96d7cb5ebffc7e47dd80a0ec57fa516271f |
Hashes for posym-0.2.7-cp38-cp38-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 66386443ac212903d27d0b12d9ecd98c2a6db5f0864ab52a5618a30129ede07a |
|
MD5 | fcb7f66f9068f2e6000c8370bba64c9a |
|
BLAKE2b-256 | b57f82dc43360b3aa07e8b82ad016a04635d6e0e75838362f428360da48ffa66 |
Hashes for posym-0.2.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8287bc2a203b2ba9fac5c6e359129d5ad09d3becc20790f567a8442b1666a234 |
|
MD5 | d28ec1a0ee51648786db49811dd73482 |
|
BLAKE2b-256 | b1a678b127e84285ad8d4463a0bda7a7f4ba343892b024f0187fc78ee7f1c590 |
Hashes for posym-0.2.7-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e7a66b8ca02d76f59654e914aef64d40be359f4fd5da07866b1ba5fa2d5a9e56 |
|
MD5 | ebfc5b932a10fe79ed11dc01f40996ff |
|
BLAKE2b-256 | 3b8efc3e47623ff9a3a84088cd06b485a356b7a144b7e180190e4fdc4765286e |
Hashes for posym-0.2.7-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cdab5532fef89aaa2d1bed23a53e20bb53abfb760c81fe1315d8c32c44bcfe45 |
|
MD5 | 3c709a230b318b8f79241056c941e81d |
|
BLAKE2b-256 | 0b284f56def7cdcefbf4ec74d4bfecef3e364f1d790b1d121d1bdb98660d75d0 |
Hashes for posym-0.2.7-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 28f0a089b02d8e5e5106bbff51092b5db61088ea62a6fb6aea47500426f11823 |
|
MD5 | 0f069500aa0ea80bf623bc662d42fbd6 |
|
BLAKE2b-256 | 8821a0fb25ced90f42c169da2aea573c5ffbf65a49767a97764b91ef51faaced |
Hashes for posym-0.2.7-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6fdcad6f98907a3da5214080eaa155a125535ce8e2ff0d0636ba7e9dad9343a8 |
|
MD5 | 8df719a1bc28234f79e6213e32d89004 |
|
BLAKE2b-256 | dc8e6c323942cc417a85b48d2d394ee5a47a5b22e10973c088bd8525b824a0eb |
Hashes for posym-0.2.7-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9f27e1532235faa91b8f91450dafb5ba67bf0927fe8c5165290d2ff78ea3474c |
|
MD5 | a3b9ea3e8fe1a5f6c17edc6ec628a188 |
|
BLAKE2b-256 | b46bfe0ede66c487316d0e520cbf1b2d4447e91b96ed3bc9b1ba7ba36ce366b4 |
Hashes for posym-0.2.7-cp37-cp37m-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b16aff41060af32a54f3df873c2346d183c3ae0890a928f52be84a6750f53be4 |
|
MD5 | 29ec3b23a41f23dd34733f35e0e4ca4b |
|
BLAKE2b-256 | 99400ef59632a3671242d98ec1186678ae513da5e579eb8773e95ddd45049c22 |
Hashes for posym-0.2.7-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 139842ac802c6d19ca76b2b3e650a4e3f60a6ec26bd656e7316e6a4e5b1bf685 |
|
MD5 | af9e225c7753831c04c0192bff22f790 |
|
BLAKE2b-256 | 5a8a2f931c2415132f86e1c720b8eabc930072a00c3be2869f32dfc84bf3b460 |
Hashes for posym-0.2.7-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | afb367087e8fc07286c9b7b5760a2a5221bd384ca9e474208f8583535fe12644 |
|
MD5 | 1d8c456118636fdff538b38e4297949d |
|
BLAKE2b-256 | c4a39e478133c57070ccb351173dafdb3d638fa80eb77de9237d65fc6a658023 |
Hashes for posym-0.2.7-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 96b34694dd24378b8c2416116dbafbef26858404fd224d9a40c4d624809f9a10 |
|
MD5 | c33309d9214f87fc6c2118cbe1eff534 |
|
BLAKE2b-256 | 75fce10ec292f84cc655ad79568ddf0264edd1cfbc22bd2b397fc581d7f0f5d2 |
Hashes for posym-0.2.7-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e996a2022461e3e86a6938f15b628cd4ec9ab10a74ae85b945012050d4ee0646 |
|
MD5 | 0a5c0e081d2d968396b25971dc91015a |
|
BLAKE2b-256 | 5294a4df03173d81a2b48d28ddc326768d66d17233a79bb0609e41192bf61936 |
Hashes for posym-0.2.7-cp36-cp36m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0953bef6ca7129500963bfefbceea07c29b638b894f0fc21df8664e6ca73d755 |
|
MD5 | 53220479363700005ee0dce05f2f9afd |
|
BLAKE2b-256 | 340ec1d73202b3b6fb324277d238eea838483cafbf275ccad88480c2e4df0e49 |
Hashes for posym-0.2.7-cp36-cp36m-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d5e465f3bde8bbf457340b64f8be4b6de591721a601733b185197c7f2e10cee0 |
|
MD5 | cce1c43df45a526a35f9809ddc582fca |
|
BLAKE2b-256 | ea6dda3a76c9d16926e18a6a086147a8261edd59076a3c6be4dc55dc7e42c060 |
Hashes for posym-0.2.7-cp36-cp36m-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 13749e7e27d2abf31ac17b54bda048199c127dc77b66383b604e72f01d1a6add |
|
MD5 | fced7660578cd3cf671bc83d5d687d82 |
|
BLAKE2b-256 | cfc32751f6c380d4c064258cba133165356629e08337c71a7722d96a414f2040 |
Hashes for posym-0.2.7-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2bfdd81479d810ed6147695bf0fecb80d65f860ddf7ac280386148b0dde3fa95 |
|
MD5 | 0f76cdadaf2670ab914785f8a5000e81 |
|
BLAKE2b-256 | a788f40931e6a2bb15555b2d6bcf1498264907e136687aa2b3c1bc45fb5b2307 |
Hashes for posym-0.2.7-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 351c68c9bce83f93468f77812ebdcf2210a3c6203bd8c09b1ceda0825a44702e |
|
MD5 | 98e3bf177a5fe7ba266be85d33ad1a0e |
|
BLAKE2b-256 | 3ff1786af1d1e2401beacda9e9314748669191579baf2fb3eab741d1d7d68f3a |
Hashes for posym-0.2.7-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3bc5c34db7427278a9cb39a083cef373e33bf8dbe6110f0b9dc42f76cba2921a |
|
MD5 | 2363ad76ec6a577b5b0978184c7a3147 |
|
BLAKE2b-256 | 5a05411b6d47ad3640b7cf7fa196c2529e256a0c698c76690240d98df6ae04fd |