[PYTHON] Le début de cif2cell

Aperçu de Cif2cell

CIF2Cell download | SourceForge.net Écrit en python qui produit le fichier d'entrée (partie spécifiée de l'arrangement atomique) du premier code de calcul principal (abinit, elk, vasp, pwscf, etc.) à partir de cif (fichier d'informations cristallographiques) qui est un format de structure cristalline. App.

Installer avec les privilèges généraux de l'utilisateur

Essayez d'installer autant que vous le pouvez avec les privilèges généraux des utilisateurs. À titre d'exemple, supposons que vous récupériez cif2cell-1.2.10.tar.gz. Avec $ tar -zxvf cif2cell-1.2.10.tar.gz, déplacez le cif2cell-1.2.10 développé vers / home / user / sources. Accédez à ce répertoire.

Installez PyCiRW avec les privilèges généraux des utilisateurs

En fait, pour installer cif2cell, vous avez besoin d'une application appelée PyCiRW, qui est incluse dans le code cif2cell. Allez dans PyCifRW-3.3 qui peut être développé avec $ tar -zxvf PyCifRW-3.3.tar.gz.

Fondamentalement, c'est le type qui est installé par ce que l'on appelle python setup.py install. Cependant, cette procédure nécessite une certaine ingéniosité car elle tente de générer un fichier dans / usr / lib64 / python2.7 / site-packages, qui ne peut pas être ajouté sans les privilèges d'administrateur.

Vérifiez le chemin référencé par python

Exécutez python,

import sys
print(sys.path)

Alors, vérifions le chemin qui peut être référencé maintenant. S'il y a une partie qui peut être éditée par des utilisateurs généraux, comme home / user / .local / lib / python2.7 / site-packages, vous pouvez la mettre là. Cependant, je voudrais garder séparément ceux que j'ai installés avec une extrême innocence afin que je puisse le reconnaître, donc je ferai un endroit clair pour le mettre.

Créez un répertoire d'installation et installez

La destination d'installation est / home / user / opt / PyCifRW-3.3. Plus tard, lorsque j'essaye d'installer en spécifiant ce répertoire comme préfixe de l'installation, je me fâche que le chemin correct ne soit pas défini. Cela est dû au fait que le chemin qui est attaché au répertoire qui sera entré n'est pas inclus dans le chemin examiné ci-dessus. J'ai donc décidé d'ajouter le chemin de manière appropriée. Il existe plusieurs façons de définir ce chemin, mais ici nous allons le résoudre en définissant la variable d'environnement PYTHONPATH.

export PYTHONPATH=/home/user/opt/PyCifRW-3.3/lib64/python2.7/site-packages:$PYTHONPATH

Ensuite, la variable d'environnement PYTHONPATH est définie de manière appropriée. Ce répertoire n'existe pas avant l'installation, mais si vous ne regardez pas plus loin et complétez lib64 / python2.7 / site-packages sous la destination à installer à partir de maintenant, il sera moss lors de l'installation suivante.

python setup.py install --prefix=/home/user/opt/PyCifRW-3.3

Tout allait bien et l'installation était terminée. Dans ʻINSTALL` dans le répertoire contenant la source,

import CifFile

S'il peut être importé avec, cela signifie que l'installation a réussi.

Probablement, cela semble être une procédure qui peut toujours être utilisée lors de l'installation de `python setup.py 'avec les privilèges généraux de l'utilisateur.

Installez cif2cell avec les privilèges d'utilisateur généraux

À ce stade, il fait beau et vous pouvez installer cif2cell. Déplacer vers le répertoire où se trouve la source cif2cell

python setup.py install --prefix=/home/user/opt/cif2cell-1.2.10

L'installation est terminée avec.

Naturellement, mettez le chemin dans cif2cell,

export PYTHONPATH=/home/user/opt/cif2cell-1.2.10/lib/python2.7/site-packages:$PYTHONPATH

Est nécessaire. Sans cela, ce sera de la mousse à «from utils import *» de «cif2cell». Le PYTHONPATH spécifié lors de l'installation de PyCifRW doit continuer à être spécifié lors de l'exécution de cif2cell.

Comment utiliser Cif2cell

Utilisation de base

Comment utiliser les commandes de base de cif2cell

cif2cell *.cif -p abinit

Donc, si vous voulez créer un fichier d'entrée avec elk ou vasp, changez la partie de ʻabinit en ʻelk ou vasp. Si vous souhaitez nommer le fichier de sortie

cif2cell *.cif -p abinit -o hoge.in

Spécifiez le nom de fichier souhaité après -o comme dans.

Il y a un exemple de cif dans cifs ou / home / user / opt / cif2cell-1.2.10 / lib / sample_cifs dans le répertoire contenant le code source, vous pouvez donc l'exécuter immédiatement.

Spécifier les options

En spécifiant l'option, vous pouvez l'utiliser de manière élaborée. Par exemple

cif2cell *.cif -p abinit --no-reduce

Et affichez le fichier d'entrée dans une cellule non primitive (probablement une grille de Bravais).

D'autres options peuvent être trouvées avec $ cif2cell -h, et il y a un manuel officiel pdf à / home / user / opt / cif2cell-1.2.10 / lib / docs. Il semble que vous puissiez créer une super cellule d'une taille appropriée à partir d'une cellule primitive (je ne l'ai jamais utilisée).

dépannage

prime

Sortie au format pwscf et affichage dans XCryS Den

Avec XCrySDen, la structure cristalline peut être facilement visualisée, et le chemin de l'espace k dans la région de Brillouin correspondante peut être facilement généré. XCrySDen peut lire les fichiers d'entrée au format pyscf, il est donc pratique de sortir avec pwscf à cette fin également.

Où puis-je obtenir caf?

Vous pouvez également le trouver sur Google avec "(nom de la substance ou formule chimique) caf". Je ne connais pas la source du cif, donc je le cherche toujours dans la [Base de données de matériaux inorganiques (AtomWork)] de NIMS (https://crystdb.nims.go.jp/). Puisqu'il est fondamentalement basé sur les valeurs rapportées dans la littérature, il est bon d'en connaître la source. Pour les cristaux avec la structure à calculer pour la première fois, placez le caf dans VESTA et regardez autour de vous, ou lisez les données cristallines directement à partir du papier et générez le caf via VESTA pour vérifier la cohérence. Vous voudrez peut-être le vérifier dans Materials Project (je ne l'ai jamais utilisé).

Recommended Posts

Le début de cif2cell
First Python 3 ~ Le début de la répétition ~
[Comprendre en 3 minutes] Le début de Linux
Notes d'apprentissage depuis le début de Python 1
Omettre la nomenclature depuis le début de la chaîne
Criez Bonjour Reiwa! Au début de Reiwa!
Notes d'apprentissage depuis le début de Python 2
[Note] Début de la programmation
Le sens de soi
le zen de Python
L'histoire de sys.path.append ()
Trouver le début de l'avenomics à partir du grossissement NT 2
Trouver le début de l'avenomics à partir du grossissement NT 1
La vengeance des types: la vengeance des types
Apprenez Nim avec Python (dès le début de l'année).
[GoLang] Définissez un espace au début du commentaire
Étude depuis le début de Python Hour1: Hello World
Compréhension mathématique de l'analyse en composantes principales depuis le début
Étude de Python Hour8: Utilisation de packages
Aligner la version de chromedriver_binary
Grattage du résultat de "Schedule-kun"
10. Compter le nombre de lignes
L'histoire de la construction de Zabbix 4.4
Vers la retraite de Python2
Comparez les polices de jupyter-themes
Obtenez le nombre de chiffres
Expliquez le code de Tensorflow_in_ROS
Réutiliser les résultats du clustering
GoPiGo3 du vieil homme
Calculez le nombre de changements
Changer le thème de Jupyter
La popularité des langages de programmation
Changer le style de matplotlib
Visualisez la trajectoire de Hayabusa 2
À propos des composants de Luigi
Composants liés du graphique
Filtrer la sortie de tracemalloc
À propos des fonctionnalités de Python
Simulation du contenu du portefeuille
Le pouvoir des pandas: Python
Remarque DJango: depuis le début (Simplification et fractionnement d'URLConf)
Obtenez UNIXTIME au début d'aujourd'hui avec une commande
Début de l'analyse de l'encyclopédie Nico Nico ~ Appuyez sur les données fournies par JSON
Les spécifications de pytz ont changé
Tester la version du module argparse
Trouvez la définition de la valeur de errno
jour de course des dockers (note)
Tracez la propagation du nouveau virus corona
L'histoire de Python et l'histoire de NaN
Élever la version de pyenv elle-même
Obtenez le nombre de vues de Qiita
[Python] La pierre d'achoppement de l'importation
Traduction japonaise du manuel e2fsprogs
L'histoire de la participation à AtCoder
Changer l'arrière-plan d'Ubuntu (GNOME)
La probabilité de précipitation est-elle correcte?
J'ai étudié le mécanisme de connexion flask!
Comprendre le contenu du pipeline sklearn