Miller indeksų skaičiuoklė kristalų plokštelių identifikavimui
Apskaičiuokite Miller indeksus iš kristalų plokštelių pertraukų naudodami šį lengvai naudojamą įrankį. Būtina kristalografijoje, medžiagų moksle ir kietojo kūno fizikoje.
Miller Indeksų Skaičiuoklė
Kristalinės Plokštumos Pertraukimai
Įveskite kristalinės plokštumos pertraukimus su x, y ir z ašimis. Naudokite '0' plokštumoms, lygioms ašiai (begalybės pertrauka).
Įveskite skaičių arba 0 begalybei
Įveskite skaičių arba 0 begalybei
Įveskite skaičių arba 0 begalybei
Miller Indeksai
Šios plokštumos Miller indeksai yra:
Vizualizacija
Kas yra Miller Indeksai?
Miller indeksai yra notacijos sistema, naudojama kristalografijoje, kad būtų nurodytos plokštumos ir kryptys kristaliniuose tinkleliuose.
Norint apskaičiuoti Miller indeksus (h,k,l) iš pertraukų (a,b,c):
1. Paimkite pertraukų reciprokus: (1/a, 1/b, 1/c) 2. Paverskite į mažiausią sveikųjų skaičių rinkinį su ta pačia proporcija 3. Jei plokštuma yra lygi ašiai (pertrauka = begalybė), atitinkamas Miller indeksas yra 0
- Neigiami indeksai žymimi brūkšniu virš skaičiaus, pvz., (h̄,k,l)
- Notacija (hkl) atspindi konkrečią plokštumą, o {hkl} atspindi lygiaverčių plokštumų šeimą
- Krypties indeksai rašomi kvadratiniuose skliaustuose [hkl], o krypties šeimos žymimos <hkl>
Dokumentacija
Miller Indices Calculator
Įvadas
Miller Indices Calculator yra galingas įrankis kristalografams, medžiagų mokslininkams ir studentams, leidžiantis nustatyti Millerio indeksus kristalų plokštėms. Millerio indeksai yra notacijos sistema, naudojama kristalografijoje, kad būtų nurodytos plokštės ir kryptys kristalų tinkleliuose. Šis skaičiuotuvas leidžia lengvai konvertuoti kristalų plokštės pertraukas su koordinatų ašimis į atitinkamus Millerio indeksus, suteikiant standartizuotą būdą identifikuoti ir bendrauti apie konkrečias kristalų plokštes.
Millerio indeksai yra pagrindiniai suprantant kristalų struktūras ir jų savybes. Atstovaujant plokštėms paprastu trijų sveikųjų skaičių rinkiniu (h,k,l), Millerio indeksai leidžia mokslininkams analizuoti rentgeno difrakcijos modelius, prognozuoti kristalų augimo elgseną, apskaičiuoti tarpplokštelę atstumą ir tirti įvairias fizines savybes, kurios priklauso nuo kristalografinio orientavimo.
Kas yra Millerio indeksai?
Millerio indeksai yra trijų sveikųjų skaičių rinkinys (h,k,l), kuris apibrėžia paralelinių plokščių šeimą kristalų tinklelyje. Šie indeksai gaunami iš atvirkštinių dalinių pertraukų, kurias plokštė daro su kristalografinėmis ašimis. Ši notacija suteikia standartizuotą būdą identifikuoti specifines plokštes kristalų struktūroje.
Millerio indeksų vizualinis atvaizdavimas
Millerio indeksų apskaičiavimo formulė
Norint apskaičiuoti Millerio indeksus (h,k,l) kristalų plokštei, atlikite šiuos matematinius žingsnius:
- Nustatykite plokštės pertraukas su x, y ir z kristalografinėmis ašimis, suteikdami reikšmes a, b ir c.
- Paimkite šių pertraukų atvirkštinius: 1/a, 1/b, 1/c.
- Konvertuokite šiuos atvirkštinius į mažiausią sveikųjų skaičių rinkinį, kuris išlaiko tą pačią proporciją.
- Gautas tris sveikieji skaičiai yra Millerio indeksai (h,k,l).
Matematiškai tai galima išreikšti kaip:
Kur:
- (h,k,l) yra Millerio indeksai
- a, b, c yra plokštės pertraukos su x, y ir z ašimis atitinkamai
Specialūs atvejai ir konvencijos
Keletas specialių atvejų ir konvencijų yra svarbūs suprasti:
-
Begalybės pertraukos: Jei plokštė yra paraleliai ašiai, jos pertrauka laikoma begalybe, o atitinkamas Millerio indeksas tampa nuliu.
-
Neigiami indeksai: Jei plokštė pertraukia ašį neigiama kryptimi nuo pradžios taško, atitinkamas Millerio indeksas yra neigiamas, žymimas brūkšniu virš skaičiaus kristalografinėje notacijoje, pvz., (h̄kl).
-
Frakcinės pertraukos: Jei pertraukos yra frakcinės, jos konvertuojamos į sveikuosius skaičius, padauginus iš mažiausio bendro daliklio.
-
Supaprastinimas: Millerio indeksai visada sumažinami iki mažiausio sveikųjų skaičių rinkinio, kuris išlaiko tą pačią proporciją.
Žingsnis po žingsnio vadovas, kaip naudoti skaičiuotuvą
Mūsų Millerio indeksų skaičiuotuvas suteikia paprastą būdą nustatyti Millerio indeksus bet kuriai kristalų plokštei. Štai kaip jį naudoti:
-
Įveskite pertraukas: Įveskite reikšmes, kur plokštė pertrauka x, y ir z ašyse.
- Naudokite teigiamus skaičius pertraukoms teigiamoje pusėje nuo pradžios taško.
- Naudokite neigiamus skaičius pertraukoms neigiama kryptimi.
- Įveskite "0" plokštėms, kurios yra paralelios ašiai (begalybės pertrauka).
-
Peržiūrėkite rezultatus: Skaičiuotuvas automatiškai apskaičiuos ir parodys Millerio indeksus (h,k,l) nurodytai plokštei.
-
Vizualizuokite plokštę: Skaičiuotuvas apima 3D vizualizaciją, kad padėtų jums suprasti plokštės orientaciją kristalų tinklelyje.
-
Kopijuokite rezultatus: Naudokite mygtuką "Kopijuoti į iškarpinę", kad lengvai perkelti apskaičiuotus Millerio indeksus į kitas programas.
Pavyzdžio apskaičiavimas
Pažvelkime į pavyzdį:
Tarkime, plokštė pertrauka x, y ir z ašyse taškuose 2, 3 ir 6 atitinkamai.
- Pertraukos yra (2, 3, 6).
- Paimame atvirkštinius: (1/2, 1/3, 1/6).
- Norint rasti mažiausią sveikųjų skaičių rinkinį su ta pačia proporcija, dauginame iš mažiausio bendro daliklio (LCM iš 2, 3, 6 = 6): (1/2 × 6, 1/3 × 6, 1/6 × 6) = (3, 2, 1).
- Todėl Millerio indeksai yra (3,2,1).
Millerio indeksų naudojimo atvejai
Millerio indeksai turi daugybę taikymo sričių įvairiose mokslinėse ir inžinerinėse srityse:
Kristalografija ir rentgeno difrakcija
Millerio indeksai yra būtini interpretuojant rentgeno difrakcijos modelius. Atstumas tarp kristalų plokščių, identifikuojamų pagal jų Millerio indeksus, lemia kampus, kuriais rentgeno spinduliai yra difraktuojami, laikantis Bragg'o įstatymo:
Kur:
- yra sveikasis skaičius
- yra rentgeno spindulių bangos ilgis
- yra atstumas tarp plokščių su Millerio indeksais (h,k,l)
- yra įkritimo kampas
Medžiagų mokslas ir inžinerija
-
Paviršiaus energijos analizė: Skirtingos kristalografinės plokštės turi skirtingas paviršiaus energijas, tai veikia tokias savybes kaip kristalų augimas, katalizė ir sukibimas.
-
Mechaninės savybės: Kristalų plokščių orientacija veikia mechanines savybes, tokias kaip slydimo sistemos, plyšimo plokštės ir lūžio elgsena.
-
Puslaidininkių gamyba: Puslaidininkių gamybos procese pasirenkamos specifinės kristalų plokštės epitaksiniam augimui ir prietaisų gamybai dėl jų elektroninių savybių.
-
Tekstūros analizė: Millerio indeksai padeda charakterizuoti pageidaujamas orientacijas (tekstūrą) poliakristalinėse medžiagose, kurios veikia jų fizines savybes.
Mineralogija ir geologija
Geologai naudoja Millerio indeksus, kad apibūdintų kristalų paviršius ir plyšimo plokštes mineraluose, padedančius identifikuoti ir suprasti formavimo sąlygas.
Švietimo taikymai
Millerio indeksai yra pagrindinės sąvokos, mokomos medžiagų mokslo, kristalografijos ir kietojo kūno fizikos kursuose, todėl šis skaičiuotuvas yra vertingas švietimo įrankis.
Alternatyvos Millerio indeksams
Nors Millerio indeksai yra plačiausiai naudojama notacija kristalų plokštėms, egzistuoja keletas alternatyvių sistemų:
-
Millerio-Bravais indeksai: Keturių indeksų notacija (h,k,i,l), naudojama šešiakampėms kristalų sistemoms, kur i = -(h+k). Ši notacija geriau atspindi šešiakampių struktūrų simetriją.
-
Weber simboliai: Naudojami daugiausia senesnėje literatūroje, ypač apibūdinant kryptis kubiniuose kristaluose.
-
Tiesiniai tinklelio vektoriai: Kai kuriais atvejais plokštės apibūdinamos naudojant tiesinius tinklelio vektorius, o ne Millerio indeksus.
-
Wyckoff pozicijos: Apibūdina atomų pozicijas kristalų struktūrose, o ne plokštes.
Nepaisant šių alternatyvų, Millerio indeksai išlieka standartine notacija dėl savo paprastumo ir universalaus taikymo visose kristalų sistemose.
Millerio indeksų istorija
Millerio indeksų sistema buvo sukurta britų mineralogijos ir kristalografijos specialisto Williamo Halloweso Millerio 1839 m., paskelbta jo traktate "A Treatise on Crystallography". Millerio notacija buvo pagrįsta ankstesniu darbu, atliktu Auguste Bravais ir kitų, tačiau pateikė elegantiškesnį ir matematiškai nuoseklesnį požiūrį.
Prieš Millerio sistemą įvairios notacijos buvo naudojamos kristalų paviršiams apibūdinti, įskaitant Weiss parametrus ir Naumann simbolius. Millerio naujovė buvo naudoti atvirkštinius pertraukas, kas supaprastino daugelį kristalografinių skaičiavimų ir suteikė intuityvesnį paralelinių plokščių atvaizdavimą.
Millerio indeksų priėmimas pagreitėjo po to, kai 1912 m. Maxas von Laue atrado rentgeno difrakciją ir vėlesnis William Lawrence Bragg ir William Henry Bragg darbas. Jų tyrimai parodė praktinę Millerio indeksų naudą interpretuojant difrakcijos modelius ir nustatant kristalų struktūras.
Visą 20-ąjį amžių, kai kristalografija tapo vis svarbesnė medžiagų moksle, kietojo kūno fizikoje ir biochemijoje, Millerio indeksai tvirtai įsitvirtino kaip standartinė notacija. Šiandien jie išlieka būtini šiuolaikinėse medžiagų charakterizavimo technikose, skaičiavimo kristalografijoje ir nanomedžiagų projektavime.
Kodo pavyzdžiai Millerio indeksams apskaičiuoti
1import math
2import numpy as np
3
4def calculate_miller_indices(intercepts):
5 """
6 Calculate Miller indices from intercepts
7
8 Args:
9 intercepts: List of three intercepts [a, b, c]
10
11 Returns:
12 List of three Miller indices [h, k, l]
13 """
14 # Handle infinity intercepts (parallel to axis)
15 reciprocals = []
16 for intercept in intercepts:
17 if intercept == 0 or math.isinf(intercept):
18 reciprocals.append(0)
19 else:
20 reciprocals.append(1 / intercept)
21
22 # Find non-zero values for GCD calculation
23 non_zero = [r for r in reciprocals if r != 0]
24
25 if not non_zero:
26 return [0, 0, 0]
27
28 # Scale to reasonable integers (avoiding floating point issues)
29 scale = 1000
30 scaled = [round(r * scale) for r in non_zero]
31
32 # Find GCD
33 gcd_value = np.gcd.reduce(scaled)
34
35 # Convert back to smallest integers
36 miller_indices = []
37 for r in reciprocals:
38 if r == 0:
39 miller_indices.append(0)
40 else:
41 miller_indices.append(round((r * scale) / gcd_value))
42
43 return miller_indices
44
45# Example usage
46intercepts = [2, 3, 6]
47indices = calculate_miller_indices(intercepts)
48print(f"Miller indices for intercepts {intercepts}: {indices}") # Output: [3, 2, 1]
49
1function gcd(a, b) {
2 a = Math.abs(a);
3 b = Math.abs(b);
4
5 while (b !== 0) {
6 const temp = b;
7 b = a % b;
8 a = temp;
9 }
10
11 return a;
12}
13
14function gcdMultiple(numbers) {
15 return numbers.reduce((result, num) => gcd(result, num), numbers[0]);
16}
17
18function calculateMillerIndices(intercepts) {
19 // Handle infinity intercepts
20 const reciprocals = intercepts.map(intercept => {
21 if (intercept === 0 || !isFinite(intercept)) {
22 return 0;
23 }
24 return 1 / intercept;
25 });
26
27 // Find non-zero values for GCD calculation
28 const nonZeroReciprocals = reciprocals.filter(val => val !== 0);
29
30 if (nonZeroReciprocals.length === 0) {
31 return [0, 0, 0];
32 }
33
34 // Scale to integers to avoid floating point issues
35 const scale = 1000;
36 const scaled = nonZeroReciprocals.map(val => Math.round(val * scale));
37
38 // Find GCD
39 const divisor = gcdMultiple(scaled);
40
41 // Convert to smallest integers
42 const millerIndices = reciprocals.map(val =>
43 val === 0 ? 0 : Math.round((val * scale) / divisor)
44 );
45
46 return millerIndices;
47}
48
49// Example
50const intercepts = [2, 3, 6];
51const indices = calculateMillerIndices(intercepts);
52console.log(`Miller indices for intercepts ${intercepts}: (${indices.join(',')})`);
53// Output: Miller indices for intercepts 2,3,6: (3,2,1)
54
1import java.util.Arrays;
2
3public class MillerIndicesCalculator {
4
5 public static int gcd(int a, int b) {
6 a = Math.abs(a);
7 b = Math.abs(b);
8
9 while (b != 0) {
10 int temp = b;
11 b = a % b;
12 a = temp;
13 }
14
15 return a;
16 }
17
18 public static int gcdMultiple(int[] numbers) {
19 int result = numbers[0];
20 for (int i = 1; i < numbers.length; i++) {
21 result = gcd(result, numbers[i]);
22 }
23 return result;
24 }
25
26 public static int[] calculateMillerIndices(double[] intercepts) {
27 double[] reciprocals = new double[intercepts.length];
28
29 // Calculate reciprocals
30 for (int i = 0; i < intercepts.length; i++) {
31 if (intercepts[i] == 0 || Double.isInfinite(intercepts[i])) {
32 reciprocals[i] = 0;
33 } else {
34 reciprocals[i] = 1 / intercepts[i];
35 }
36 }
37
38 // Count non-zero values
39 int nonZeroCount = 0;
40 for (double r : reciprocals) {
41 if (r != 0) nonZeroCount++;
42 }
43
44 if (nonZeroCount == 0) {
45 return new int[]{0, 0, 0};
46 }
47
48 // Scale to integers
49 int scale = 1000;
50 int[] scaled = new int[nonZeroCount];
51 int index = 0;
52
53 for (double r : reciprocals) {
54 if (r != 0) {
55 scaled[index++] = (int) Math.round(r * scale);
56 }
57 }
58
59 // Find GCD
60 int divisor = gcdMultiple(scaled);
61
62 // Convert to smallest integers
63 int[] millerIndices = new int[reciprocals.length];
64 for (int i = 0; i < reciprocals.length; i++) {
65 if (reciprocals[i] == 0) {
66 millerIndices[i] = 0;
67 } else {
68 millerIndices[i] = (int) Math.round((reciprocals[i] * scale) / divisor);
69 }
70 }
71
72 return millerIndices;
73 }
74
75 public static void main(String[] args) {
76 double[] intercepts = {2, 3, 6};
77 int[] indices = calculateMillerIndices(intercepts);
78
79 System.out.println("Miller indices for intercepts " +
80 Arrays.toString(intercepts) + ": " +
81 Arrays.toString(indices));
82 // Output: Miller indices for intercepts [2.0, 3.0, 6.0]: [3, 2, 1]
83 }
84}
85
1' Excel VBA Function for Miller Indices Calculation
2Function CalculateMillerIndices(x As Double, y As Double, z As Double) As String
3 Dim recipX As Double, recipY As Double, recipZ As Double
4 Dim nonZeroCount As Integer, i As Integer
5 Dim scale As Long, gcdVal As Long
6 Dim scaledVals() As Long
7 Dim millerH As Long, millerK As Long, millerL As Long
8
9 ' Calculate reciprocals
10 If x = 0 Then
11 recipX = 0
12 Else
13 recipX = 1 / x
14 End If
15
16 If y = 0 Then
17 recipY = 0
18 Else
19 recipY = 1 / y
20 End If
21
22 If z = 0 Then
23 recipZ = 0
24 Else
25 recipZ = 1 / z
26 End If
27
28 ' Count non-zero values
29 nonZeroCount = 0
30 If recipX <> 0 Then nonZeroCount = nonZeroCount + 1
31 If recipY <> 0 Then nonZeroCount = nonZeroCount + 1
32 If recipZ <> 0 Then nonZeroCount = nonZeroCount + 1
33
34 If nonZeroCount = 0 Then
35 CalculateMillerIndices = "(0,0,0)"
36 Exit Function
37 End If
38
39 ' Scale to integers
40 scale = 1000
41 ReDim scaledVals(1 To nonZeroCount)
42 i = 1
43
44 If recipX <> 0 Then
45 scaledVals(i) = Round(recipX * scale)
46 i = i + 1
47 End If
48
49 If recipY <> 0 Then
50 scaledVals(i) = Round(recipY * scale)
51 i = i + 1
52 End If
53
54 If recipZ <> 0 Then
55 scaledVals(i) = Round(recipZ * scale)
56 End If
57
58 ' Find GCD
59 gcdVal = scaledVals(1)
60 For i = 2 To nonZeroCount
61 gcdVal = GCD(gcdVal, scaledVals(i))
62 Next i
63
64 ' Calculate Miller indices
65 If recipX = 0 Then
66 millerH = 0
67 Else
68 millerH = Round((recipX * scale) / gcdVal)
69 End If
70
71 If recipY = 0 Then
72 millerK = 0
73 Else
74 millerK = Round((recipY * scale) / gcdVal)
75 End If
76
77 If recipZ = 0 Then
78 millerL = 0
79 Else
80 millerL = Round((recipZ * scale) / gcdVal)
81 End If
82
83 CalculateMillerIndices = "(" & millerH & "," & millerK & "," & millerL & ")"
84End Function
85
86Function GCD(a As Long, b As Long) As Long
87 Dim temp As Long
88
89 a = Abs(a)
90 b = Abs(b)
91
92 Do While b <> 0
93 temp = b
94 b = a Mod b
95 a = temp
96 Loop
97
98 GCD = a
99End Function
100
101' Usage in Excel:
102' =CalculateMillerIndices(2, 3, 6)
103' Result: (3,2,1)
104
1#include <iostream>
2#include <vector>
3#include <cmath>
4#include <numeric>
5#include <algorithm>
6
7// Calculate GCD of two numbers
8int gcd(int a, int b) {
9 a = std::abs(a);
10 b = std::abs(b);
11
12 while (b != 0) {
13 int temp = b;
14 b = a % b;
15 a = temp;
16 }
17
18 return a;
19}
20
21// Calculate GCD of multiple numbers
22int gcdMultiple(const std::vector<int>& numbers) {
23 int result = numbers[0];
24 for (size_t i = 1; i < numbers.size(); ++i) {
25 result = gcd(result, numbers[i]);
26 }
27 return result;
28}
29
30// Calculate Miller indices from intercepts
31std::vector<int> calculateMillerIndices(const std::vector<double>& intercepts) {
32 std::vector<double> reciprocals;
33
34 // Calculate reciprocals
35 for (double intercept : intercepts) {
36 if (intercept == 0 || std::isinf(intercept)) {
37 reciprocals.push_back(0);
38 } else {
39 reciprocals.push_back(1.0 / intercept);
40 }
41 }
42
43 // Find non-zero values
44 std::vector<double> nonZeroReciprocals;
45 for (double r : reciprocals) {
46 if (r != 0) {
47 nonZeroReciprocals.push_back(r);
48 }
49 }
50
51 if (nonZeroReciprocals.empty()) {
52 return {0, 0, 0};
53 }
54
55 // Scale to integers
56 const int scale = 1000;
57 std::vector<int> scaled;
58 for (double r : nonZeroReciprocals) {
59 scaled.push_back(std::round(r * scale));
60 }
61
62 // Find GCD
63 int divisor = gcdMultiple(scaled);
64
65 // Convert to smallest integers
66 std::vector<int> millerIndices;
67 for (double r : reciprocals) {
68 if (r == 0) {
69 millerIndices.push_back(0);
70 } else {
71 millerIndices.push_back(std::round((r * scale) / divisor));
72 }
73 }
74
75 return millerIndices;
76}
77
78int main() {
79 std::vector<double> intercepts = {2, 3, 6};
80 std::vector<int> indices = calculateMillerIndices(intercepts);
81
82 std::cout << "Miller indices for intercepts [";
83 for (size_t i = 0; i < intercepts.size(); ++i) {
84 std::cout << intercepts[i];
85 if (i < intercepts.size() - 1) std::cout << ", ";
86 }
87 std::cout << "]: (";
88
89 for (size_t i = 0; i < indices.size(); ++i) {
90 std::cout << indices[i];
91 if (i < indices.size() - 1) std::cout << ",";
92 }
93 std::cout << ")" << std::endl;
94
95 // Output: Miller indices for intercepts [2, 3, 6]: (3,2,1)
96
97 return 0;
98}
99
Skaičiavimo pavyzdžiai
Štai keletas dažnų Millerio indeksų apskaičiavimo pavyzdžių:
-
Pavyzdys 1: Standartinis atvejis
- Pertraukos: (2, 3, 6)
- Atvirkštiniai: (1/2, 1/3, 1/6)
- Padauginus iš LCM (6): (3, 2, 1)
- Millerio indeksai: (3,2,1)
-
Pavyzdys 2: Plokštė, paralelinė ašiai
- Pertraukos: (1, ∞, 2)
- Atvirkštiniai: (1, 0, 1/2)
- Padauginus iš 2: (2, 0, 1)
- Millerio indeksai: (2,0,1)
-
Pavyzdys 3: Neigiamos pertraukos
- Pertraukos: (-1, 2, 3)
- Atvirkštiniai: (-1, 1/2, 1/3)
- Padauginus iš 6: (-6, 3, 2)
- Millerio indeksai: (-6,3,2)
-
Pavyzdys 4: Frakcinės pertraukos
- Pertraukos: (1/2, 1/3, 1/4)
- Atvirkštiniai: (2, 3, 4)
- Jau sveikųjų skaičių formoje
- Millerio indeksai: (2,3,4)
-
Pavyzdys 5: Speciali plokštė (100)
- Pertraukos: (1, ∞, ∞)
- Atvirkštiniai: (1, 0, 0)
- Millerio indeksai: (1,0,0)
Dažnai užduodami klausimai
Kam naudojami Millerio indeksai?
Millerio indeksai naudojami identifikuoti ir apibūdinti plokštes ir kryptis kristalų tinkleliuose. Jie suteikia standartizuotą notaciją, padedančią kristalografams, medžiagų mokslininkams ir inžinieriams bendrauti apie konkrečius kristalų orientavimus. Millerio indeksai yra būtini analizuojant rentgeno difrakcijos modelius, suprantant kristalų augimą, apskaičiuojant tarpplokštelę atstumą ir tiriant įvairias fizines savybes, kurios priklauso nuo kristalografinio orientavimo.
Kaip elgtis su plokšte, kuri yra paralelinė vienai iš ašių?
Kai plokštė yra paralelinė ašiai, ji niekada nepertrauka tos ašies, todėl pertrauka laikoma begalybe. Millerio indeksų notacijoje atvirkštinis begalybės skaičius yra nulis, todėl atitinkamas Millerio indeksas tampa nuliu. Pavyzdžiui, plokštė, paralelinė y ašiai, turėtų pertraukas (a, ∞, c) ir Millerio indeksus (h,0,l).
Ką reiškia neigiami Millerio indeksai?
Neigiami Millerio indeksai rodo, kad plokštė pertraukia atitinkamą ašį neigiama kryptimi nuo pradžios taško. Kristalografinėje notacijoje neigiami indeksai paprastai žymimi brūkšniu virš skaičiaus, pvz., (h̄kl). Neigiami indeksai atspindi plokštes, kurios yra ekvivalentinės jų teigiamoms atitikmenims fizinėmis savybėmis, tačiau turi skirtingas orientacijas.
Kaip Millerio indeksai susiję su kristalų struktūra?
Millerio indeksai tiesiogiai susiję su atomų išdėstymu kristalų struktūroje. Atstumas tarp plokščių su specifiniais Millerio indeksais (dhkl) priklauso nuo kristalų sistemos ir tinklelio parametrų. Rentgeno difrakcijoje šios plokštės veikia kaip atspindinčios plokštės pagal Bragg'o įstatymą, sukurdamos charakteringus difrakcijos modelius, kurie atskleidžia kristalų struktūrą.
Koks skirtumas tarp Millerio indeksų ir Millerio-Bravais indeksų?
Millerio indeksai naudoja tris sveikuosius skaičius (h,k,l) ir yra tinkami daugumai kristalų sistemų. Millerio-Bravais indeksai naudoja keturis sveikuosius skaičius (h,k,i,l) ir yra specialiai sukurti šešiakampėms kristalų sistemoms. Ketvirtas indeksas, i, yra perteklinis (i = -(h+k)), tačiau padeda išlaikyti šešiakampių sistemos simetriją ir padaro ekvivalentines plokštes lengviau atpažįstamas.
Kaip apskaičiuoti kampą tarp dviejų kristalų plokščių?
Kampas θ tarp dviejų plokščių su Millerio indeksais (h₁,k₁,l₁) ir (h₂,k₂,l₂) kubinėje kristalų sistemoje gali būti apskaičiuojamas naudojant:
Ne kubinėms sistemoms apskaičiavimas yra sudėtingesnis ir apima kristalų sistemos metrinį tensorą.
Ar Millerio indeksai gali būti frakciniai?
Ne, pagal konvenciją Millerio indeksai visada yra sveikieji skaičiai. Jei apskaičiavimas iš pradžių duoda frakcinės reikšmes, jos konvertuojamos į mažiausią sveikųjų skaičių rinkinį, kuris išlaiko tą pačią proporciją. Tai daroma padauginus visas reikšmes iš mažiausio bendro daliklio.
Kaip aš galiu nustatyti Millerio indeksus eksperimentiniu būdu?
Millerio indeksai kristalų paviršiams gali būti nustatyti eksperimentiniu būdu naudojant rentgeno difrakciją, elektronų difrakciją arba optinę goniometriją. Rentgeno difrakcijoje kampai, kuriais difrakcija vyksta, yra susiję su d-atstumu kristalų plokštėms pagal Bragg'o įstatymą, kuris gali būti naudojamas nustatyti atitinkamus Millerio indeksus.
Kokie yra bendri kristalų plokščių Millerio indeksai?
Kai kurie bendri kristalų plokščių ir jų Millerio indeksai yra:
- (100), (010), (001): Pagrindinės kubinės plokštės
- (110), (101), (011): Diagonalinės plokštės kubinėse sistemose
- (111): Oktaedrinė plokštė kubinėse sistemose
- (112): Dažna slydimo plokštė kūno centriniuose kubiniuose metaluose
Nuorodos
-
Miller, W. H. (1839). A Treatise on Crystallography. Cambridge: For J. & J.J. Deighton.
-
Ashcroft, N. W., & Mermin, N. D. (1976). Solid State Physics. Holt, Rinehart and Winston.
-
Hammond, C. (2015). The Basics of Crystallography and Diffraction (4th ed.). Oxford University Press.
-
Cullity, B. D., & Stock, S. R. (2014). Elements of X-ray Diffraction (3rd ed.). Pearson Education.
-
Kittel, C. (2004). Introduction to Solid State Physics (8th ed.). Wiley.
-
Kelly, A., & Knowles, K. M. (2012). Crystallography and Crystal Defects (2nd ed.). Wiley.
-
International Union of Crystallography. (2016). International Tables for Crystallography, Volume A: Space-group symmetry. Wiley.
-
Giacovazzo, C., Monaco, H. L., Artioli, G., Viterbo, D., Ferraris, G., Gilli, G., Zanotti, G., & Catti, M. (2011). Fundamentals of Crystallography (3rd ed.). Oxford University Press.
-
Buerger, M. J. (1978). Elementary Crystallography: An Introduction to the Fundamental Geometrical Features of Crystals. MIT Press.
-
Tilley, R. J. (2006). Crystals and Crystal Structures. Wiley.
Išbandykite mūsų Millerio indeksų skaičiuotuvą šiandien, kad greitai ir tiksliai nustatytumėte Millerio indeksus bet kuriai kristalų plokštei. Nesvarbu, ar esate studentas, besimokantis kristalografijos, mokslininkas, analizuojantis medžiagų struktūras, ar inžinierius, projektuojantis naujas medžiagas, šis įrankis padės jums lengvai identifikuoti ir suprasti kristalų plokštes.
Susiję įrankiai
Raskite daugiau įrankių, kurie gali būti naudingi jūsų darbo eiga.