-rotate [com] <axe> <θ>
-rotate [com] [hkl] <θ>
-rotate [com] <vx> <vy> <vz> <θ>
-rotate [com] <fichier>
Cette option permet de pivoter le système (la boîte et/ou les atomes) autour d'un axe donné.
L'<axe> de rotation peut être 'x', 'y', 'z' (axes cartésiens), ou une direction cristallographique définie par ses indices de Miller (voir comment spécifier les indices de Miller). Si l'orientation crystallograpĥique du système est définie (par exemple grâce à l'option -properties) alors les indices de Miller se réfèrent à cette orientation. Sinon il est supposé que l'orientation est X=[100], Y=[010], Z=[001]. Il est également possible de donner n'importe quelle direction en entrant les coordonnées d'un vecteur (vx;vy;vz) en angströms. L'angle de rotation θ doit être donné en degrés.
Si un nom de <fichier> est fourni, alors ce fichier doit contenir une matric de rotation sous la forme de trois lignes, avec trois entrées par ligne. Chaque entrée peut être un nombre réel, ou bien une fonction. La syntaxe pour écrire des fonctions est détaillée sur cette page.
Si le mot-clé "com" est utilisé, alors la rotation s'effectuera autour du centre de masse du système. Sinon (s'il est omis), la rotation s'effectuera autour de l'origine (0,0,0) par défaut.
Si les forces (fx,fy,fz) ou les vitesses (vx,vy,vz) existent comme propriétés auxiliaires, alors la rotation s'appliquera aussi à ces vecteurs.
Cette option affectera certaines propriétés du système (par ex. le tenseur élastique) si elles avaient été précédemment définies par l'option -properties.
Si une sélection est définie (avec l'option -select) alors la rotation ne sera appliquée qu'aux atomes sélectionnés, et la boîte ne sera pas modifiée. Si le mot-clé "com" est utilisé, alors c'est le centre de masse des atomes sélectionnés qui servira de pivot.
Après l'application de cette option, certains atomes peuvent se retrouver hors de la boîte, ce qui peut être corrigé grâce à l'option -wrap.
Par défaut le système n'est pas pivoté.
atomsk initial.cfg -rotate x 45 final.xyz
Ceci tournera le système dans son ensemble (atomes et boîte) de 45 degrés autour de l'axe X.
atomsk initial.cfg -select in cylinder Z 0.5*box 0.5*box 25 -rotate com Z 24° final.xyz
Cette commande va sélectionner un cylindre de rayon 25 Å suivant Z, puis va pivoter ce cylindre autour de son centre de masse d'un angle de 24 degrés autour de l'axe Z. La boîte ne sera pas pivotée.
atomsk initial.cfg -rotate [111] 45 final.xyz
Cette commande va tourner le système (atomes et boîte) de 45 degrés autour de la direction cristalline [111].
atomsk initial.cfg -rotate 1.2 0.0 3.9 21.7 final.xyz
Cette commande va tourner le système de 21.7 degrés autour du vecteur cartésien (1.2;0.0;3.9).
# Une rotation à appliquer à mon système
1 0 0
0 0.5 -sqrt(3)/2
0 sqrt(3)/2 1/2
atomsk initial.cfg -rotate rot_matrix.txt final.cfg
Cette commande va lire la matrice de rotation depuis le fichier "rot_matrix.txt", et appliquera cette rotation au système. Notez que les valeurs peuvent être données sous forme numérique ou bien en utilisant des fonctions mathématiques dans ce fichier. En l'occurrence, cette matrice correspond à une rotation de 60 degrés autour de l'axe X.