                   Grupy punktowe w krystalografii: przekształcenia położenia punktu
                   Układ heksagonalny z osiami heksagonalnymi
                   © W.J. 2008-2017 

Procedury i definicje systemowe:

number: false $ ratprint: false $

load(draw)$

sa: float(sin(%pi/3))$ ca: float(cos(%pi/3))$ sa2: float(sin(2*%pi/3))$ ca2: float(cos(2*%pi/3))$

parametry1: [
line_width=1,
user_preamble="set size ratio 1",
color=black,
head_type = 'nofilled, head_length = .05, 
vector([-1,0],[2.1,0]), text:label(["y",1.1,-0.1]),
vector([0,1],[0,-2.1]), text:label(["x",-0.1,-1.1]),
implicit( x^2+y^2=1, x,-1.20,1.2, y,-1.2,1.2 ),

line_width=2,
implicit( (x-1)^2+(y-0)^2=0.0005, x,-1.2,1.2, y,-1.2,1.2 ),
implicit( (x-0)^2+(y-1)^2=0.0005, x,-1.2,1.2, y,-1.2,1.2 ),
implicit( (x-0)^2+(y+1)^2=0.0005, x,-1.2,1.2, y,-1.2,1.2 ),
implicit( (x+1)^2+(y-0)^2=0.0005, x,-1.2,1.2, y,-1.2,1.2 ),

implicit( (x-sa)^2+(y-ca)^2=0.0005, x,-1.2,1.2, y,-1.2,1.2 ),
implicit( (x-sa2)^2+(y-ca2)^2=0.0005, x,-1.2,1.2, y,-1.2,1.2 ),
implicit( (x-ca)^2+(y+sa)^2=0.0005, x,-1.2,1.2, y,-1.2,1.2 ),
implicit( (x-ca2)^2+(y+sa2)^2=0.0005, x,-1.2,1.2, y,-1.2,1.2 ),

implicit( (x+sa)^2+(y-ca)^2=0.0005, x,-1.2,1.2, y,-1.2,1.2 ),
implicit( (x+sa2)^2+(y-ca2)^2=0.0005, x,-1.2,1.2, y,-1.2,1.2 ),
implicit( (x+ca)^2+(y-sa)^2=0.0005, x,-1.2,1.2, y,-1.2,1.2 ),
implicit( (x+ca2)^2+(y-sa2)^2=0.0005, x,-1.2,1.2, y,-1.2,1.2 ),

line_width=1
] $

Definicje macierzy elementów symetrii:

 
Teraz z osiami heksagonalnymi
 

E:     matrix( [ 1, 0, 0], [ 0, 1, 0], [ 0, 0, 1]) $
C:     matrix( [-1, 0, 0], [ 0,-1, 0], [ 0, 0,-1]) $
Pz:    matrix( [ 1, 0, 0], [ 0, 1, 0], [ 0, 0,-1]) $
L2z:   Pz.C $

Px:    matrix( [-1, 0, 0], [ 0, 1, 0], [ 0, 0, 1]) $
Py:    matrix( [ 1, 0, 0], [ 1,-1, 0], [ 0, 0, 1]) $
Pxy:   matrix( [ 0,-1, 0], [-1, 0, 0], [ 0, 0, 1]) $
Px_y:  matrix( [ 0, 1, 0], [ 1, 0, 0], [ 0, 0, 1]) $
Px2y:  matrix( [ 1,-1, 0], [ 0,-1, 0], [ 0, 0, 1]) $
P2xy:  matrix( [-1, 0, 0], [-1, 1, 0], [ 0, 0, 1]) $

L2x:   Px.C $
L2y:   Py.C $
L2xy:  Pxy.C $
L2x_y: Px_y.C $
L2x2y: Px2y.C $
L22xy: P2xy.C $

L3z:    matrix( [ 0, -1, 0], [ 1, -1, 0], [ 0, 0, 1] ) $
L3zC:   L3z.C $
A6z:    L3z.C $

L6z:    matrix( [ 1, -1, 0], [ 1,  0, 0], [ 0, 0, 1] ) $
L3zPz:  L3z.Pz $
A3z:    L3z.Pz /* w Bilbao to jest ta z obrotem przeciwnym */$

 
Przykłady użycia
 

L3z;

L3zC;

L3z.L3z;

L3z.L3z.L3z;

Pkt1: matrix([0.7], [0.2], [0.4]) $

Pkt1;

L3z.Pkt1;

Pkt2: matrix([x], [y], [z]) $

L6z.Pkt2;

 
Zadanie 1: Oblicz rachunkiem macierzowym wynik działania
           kolejno trzech elementów symetrii na punkt P1
 

[ NPkt1: Pkt1,
  NPkt2: L2xy.NPkt1,
  NPkt3: Pz.L2xy.NPkt1,
  NPkt4: C.Pz.L2xy.NPkt1 ];

load(draw)$

wxdraw2d(

parametry1,

if NPkt1[3,1]>0 then color= red else color=blue,
if NPkt1[3,1]>0 then 
  implicit( (x-NPkt1[2,1])^2 + (y-(-NPkt1[1,1]))^2=0.005, x,-1.2,1.2, y,-1.2,1.2 ) 
 else 
  implicit( (x-NPkt1[2,1])^2 + (y-(-NPkt1[1,1]))^2=0.002, x,-1.2,1.2, y,-1.2,1.2 ),

if NPkt2[3,1]>0 then color= red else color=blue,
if NPkt2[3,1]>0 then 
  implicit( (x-NPkt2[2,1])^2 + (y-(-NPkt2[1,1]))^2=0.005, x,-1.2,1.2, y,-1.2,1.2 ) 
 else 
  implicit( (x-NPkt2[2,1])^2 + (y-(-NPkt2[1,1]))^2=0.002, x,-1.2,1.2, y,-1.2,1.2 ),

if NPkt3[3,1]>0 then color= red else color=blue,
if NPkt3[3,1]>0 then 
  implicit( (x-NPkt3[2,1])^2 + (y-(-NPkt3[1,1]))^2=0.005, x,-1.2,1.2, y,-1.2,1.2 ) 
 else 
  implicit( (x-NPkt3[2,1])^2 + (y-(-NPkt3[1,1]))^2=0.002, x,-1.2,1.2, y,-1.2,1.2 ),

if NPkt4[3,1]>0 then color= red else color=blue,
if NPkt4[3,1]>0 then 
  implicit( (x-NPkt4[2,1])^2 + (y-(-NPkt4[1,1]))^2=0.005, x,-1.2,1.2, y,-1.2,1.2 ) 
 else 
  implicit( (x-NPkt4[2,1])^2 + (y-(-NPkt4[1,1]))^2=0.002, x,-1.2,1.2, y,-1.2,1.2 )

);

 
Zadanie 2: Wyznacz rachunkiem macierzowym
           współrzędne punktów symetrycznie równoważnych
           a związanych działaniem osi sześciokrotnej
 

[Pkt2,
 L6z.Pkt2,
 L6z.L6z.Pkt2,
 L6z.L6z.L6z.Pkt2,
 L6z.L6z.L6z.L6z.Pkt2,
 L6z.L6z.L6z.L6z.L6z.Pkt2];

L6z.L6z.L6z.L6z.L6z.L6z.Pkt2;

 
Zadanie 3: Wyznacz rachunkiem macierzowym
           współrzędne punktów symetrycznie równoważnych
           a związanych działaniem osi trójkrotnej inwersyjnej
 

[Pkt2,
 L3zC.Pkt2,
 L3zC.L3zC.Pkt2];

 
(porównaj z Bilbao)
 