Millerin indeksit laskin kiteen tasojen tunnistamiseen
Laske Millerin indeksit kiteen tasojen leikkauspisteistä tällä helppokäyttöisellä työkalulla. Olennainen kristallografiassa, materiaalitieteessä ja kiinteän aineen fysiikan sovelluksissa.
Miller-indeksien laskin
Kiteen tason leikkaukset
Syötä kiteen tason leikkaukset x-, y- ja z-akselien kanssa. Käytä '0' tasoille, jotka ovat rinnakkaisia akselin kanssa (äärettömän leikkaus).
Syötä numero tai 0 äärettömyydelle
Syötä numero tai 0 äärettömyydelle
Syötä numero tai 0 äärettömyydelle
Miller-indeksit
Tämän tason Miller-indeksit ovat:
Visualisointi
Mitä ovat Miller-indeksit?
Miller-indeksit ovat merkintäjärjestelmä, jota käytetään kiderakenteessa tasojen ja suuntien määrittämiseen.
Laske Miller-indeksit (h,k,l) leikkauksista (a,b,c):
1. Ota leikkausten käänteiset arvot: (1/a, 1/b, 1/c) 2. Muunna pienimpään kokonaislukujoukkoon, jolla on sama suhde 3. Jos taso on rinnakkainen akselin kanssa (leikkaus = äärettömyys), sen vastaava Miller-indeksi on 0
- Negatiiviset indeksit merkitään viivalla numeron ylle, esim. (h̄,k,l)
- Merkintä (hkl) edustaa tiettyä tasoa, kun taas {hkl} edustaa ekvivalenttien tasojen perhettä
- Suuntanumerot kirjoitetaan neliömerkkeihin [hkl], ja suuntaperheet merkitään <hkl>
Dokumentaatio
Miller Indices Calculator
Introduction
Miller Indices Calculator on tehokas työkalu kristallografiassa, materiaalitieteessä ja opiskelijoille, jonka avulla voidaan määrittää Miller-indeksit kristallitasoista. Miller-indeksit ovat merkintäjärjestelmä, jota käytetään kristallografiassa tason ja suuntien määrittämiseen kristalliverkoissa. Tämä laskin mahdollistaa helposti kristallitason leikkauspisteiden muuntamisen koordinaattiakseleihin vastaaviksi Miller-indekseiksi, tarjoten standardoidun tavan tunnistaa ja kommunikoida erityisistä kristallitasoista.
Miller-indeksit ovat perustavanlaatuisia ymmärtämään kristallirakenteita ja niiden ominaisuuksia. Esittämällä tasot yksinkertaisella kolmen kokonaisluvun (h,k,l) joukolle, Miller-indeksit mahdollistavat tutkijoiden analysoida X-ray-diffraktiokuvioita, ennustaa kristallikasvukäyttäytymistä, laskea tasoväliä ja tutkia erilaisia fysikaalisia ominaisuuksia, jotka riippuvat kristallografisesta suuntauksesta.
What Are Miller Indices?
Miller-indeksit ovat kolmonen kokonaisluku (h,k,l), jotka määrittävät perhettä rinnakkaisia tasoja kristalliverkossa. Nämä indeksit johdetaan leikkauspisteiden käänteisistä arvoista, joita taso tekee kristallografiakoordinaattiakseleiden kanssa. Merkintä tarjoaa standardoidun tavan tunnistaa erityiset tasot kristallirakenteessa.
Visual Representation of Miller Indices
Formula for Calculating Miller Indices
Määrittääksesi Miller-indeksit (h,k,l) kristallitasolle, seuraa näitä matemaattisia vaiheita:
- Määritä tason leikkauspisteet x-, y- ja z-kristallografiakoordinaattiakseleilla, antaen arvot a, b ja c.
- Ota näiden leikkauspisteiden käänteisarvot: 1/a, 1/b, 1/c.
- Muunna nämä käänteisarvot pienimmiksi kokonaisluvuiksi, jotka säilyttävät saman suhteen.
- Tuloksena olevat kolme kokonaislukua ovat Miller-indeksit (h,k,l).
Matemaattisesti tämä voidaan ilmaista seuraavasti:
Missä:
- (h,k,l) ovat Miller-indeksit
- a, b, c ovat tason leikkauspisteet x-, y- ja z-akseleilla
Special Cases and Conventions
Useita erityistapauksia ja käytäntöjä on tärkeää ymmärtää:
-
Ikuiset leikkauspisteet: Jos taso on rinnakkainen akselille, sen leikkauspiste katsotaan olevan äärettömyys, ja vastaava Miller-indeksi tulee nollaksi.
-
Negatiiviset indeksit: Jos taso leikkaa akselin negatiivisella puolella alkuperästä, vastaava Miller-indeksi on negatiivinen, merkitty viivalla numeron ylle kristallografiassa, esim. (h̄kl).
-
Murtolukuleikkauspisteet: Jos leikkauspisteet ovat murtolukuja, ne muunnetaan kokonaisluvuiksi kertomalla pienimmällä yhteisellä monikerralla.
-
Yksinkertaistaminen: Miller-indeksejä yksinkertaistetaan aina pienimmiksi kokonaisluvuiksi, jotka säilyttävät saman suhteen.
Step-by-Step Guide to Using the Calculator
Miller Indices Calculatorimme tarjoaa yksinkertaisen tavan määrittää Miller-indeksit kaikille kristallitasoille. Tässä on ohjeet sen käyttöön:
-
Syötä leikkauspisteet: Anna arvot, joilla taso leikkaa x-, y- ja z-akseleita.
- Käytä positiivisia lukuja leikkauspisteille, jotka ovat alkuperän positiivisella puolella.
- Käytä negatiivisia lukuja leikkauspisteille, jotka ovat negatiivisella puolella.
- Syötä "0" tasoille, jotka ovat rinnakkain akselin kanssa (äärettömyysleikkauspiste).
-
Katso tulokset: Laskin laskee automaattisesti ja näyttää Miller-indeksit (h,k,l) määritellylle tasolle.
-
Visualisoi taso: Laskin sisältää 3D-visualisoinnin, joka auttaa ymmärtämään tason suuntausta kristalliverkossa.
-
Kopioi tulokset: Käytä "Kopioi leikepöydälle" -painiketta siirtääksesi lasketut Miller-indeksit helposti muihin sovelluksiin.
Example Calculation
Käydään läpi esimerkki:
Oletetaan, että taso leikkaa x-, y- ja z-akseleita pisteissä 2, 3 ja 6.
- Leikkauspisteet ovat (2, 3, 6).
- Ota käänteisarvot: (1/2, 1/3, 1/6).
- Löydä pienimmät kokonaisluvut, joilla on sama suhde, kertomalla pienimmällä yhteisellä monikerralla (LCM 2, 3, 6 = 6): (1/2 × 6, 1/3 × 6, 1/6 × 6) = (3, 2, 1).
- Siksi Miller-indeksit ovat (3,2,1).
Use Cases for Miller Indices
Miller-indekseillä on lukuisia sovelluksia eri tieteellisillä ja insinööritieteellisillä aloilla:
Crystallography and X-ray Diffraction
Miller-indeksit ovat välttämättömiä X-ray-diffraktiokuvioiden tulkinnassa. Kristallitasojen, joita kuvataan niiden Miller-indekseillä, väli määrittää kulmat, joilla X-rayt diffraktoituvat, Braggin lain mukaan:
Missä:
- on kokonaisluku
- on X-rayn aallonpituus
- on väli tasojen, joilla on Miller-indeksit (h,k,l)
- on tulemis- ja heijastuskulma
Materials Science and Engineering
-
Pintaenergian analyysi: Eri kristallografiset tasot omaavat erilaisia pintaenergioita, mikä vaikuttaa ominaisuuksiin, kuten kristallikasvuun, katalyysiin ja tartuntaan.
-
Mekaaniset ominaisuudet: Kristallitasojen suuntaus vaikuttaa mekaanisiin ominaisuuksiin, kuten liukujärjestelmiin, halkeamatasoihin ja murtokäyttäytymiseen.
-
Puolijohteiden valmistus: Puolijohteiden valmistuksessa valitaan erityisiä kristallitasoja epitaksiaalista kasvua ja laitesuunnittelua varten niiden sähköisten ominaisuuksien vuoksi.
-
Tekstuurianalyysi: Miller-indeksit auttavat luonnehtimaan suosittuja suuntia (tekstuuria) polykrystalinisissa materiaaleissa, mikä vaikuttaa niiden fysikaalisiin ominaisuuksiin.
Mineralogy and Geology
Geologit käyttävät Miller-indeksejä kuvaamaan kristallipintoja ja halkeamatasoja mineraaleissa, mikä auttaa tunnistamisessa ja ymmärtämään muodostumisolosuhteita.
Educational Applications
Miller-indeksit ovat perustavanlaatuisia käsitteitä, joita opetetaan materiaalitieteessä, kristallografiassa ja kiinteästä fysiikasta, mikä tekee tästä laskimesta arvokkaan koulutustyökalun.
Alternatives to Miller Indices
Vaikka Miller-indeksit ovat yleisimmin käytetty merkintä kristallitasoille, useita vaihtoehtoisia järjestelmiä on olemassa:
-
Miller-Bravais-indeksit: Neljän indeksin merkintä (h,k,i,l), jota käytetään kuusikulmaisissa kristallijärjestelmissä, missä i = -(h+k). Tämä merkintä heijastaa paremmin kuusikulmaisten rakenteiden symmetriaa.
-
Weber-symbolit: Käytetään pääasiassa vanhemmassa kirjallisuudessa, erityisesti kuvaamaan suuntia kuutioissa.
-
Suorat verkko-vektorit: Joissakin tapauksissa tasoja kuvataan suoraan verkko-vektoreilla sen sijaan, että käytettäisiin Miller-indeksejä.
-
Wyckoff-asemat: Kuvastavat atomiasemia kristallirakenteissa sen sijaan, että käytettäisiin tasoja.
Huolimatta näistä vaihtoehdoista, Miller-indeksit pysyvät standardimerkintänä niiden yksinkertaisuuden ja yleisen sovellettavuuden vuoksi kaikissa kristallijärjestelmissä.
History of Miller Indices
Miller-indeksijärjestelmän kehitti brittiläinen mineralogi ja kristallografi William Hallowes Miller vuonna 1839, julkaistu teoksessaan "A Treatise on Crystallography". Millerin merkintä perustui aikaisempaan työhön Auguste Bravaisin ja muiden toimesta, mutta tarjosi elegantimman ja matemaattisesti johdonmukaisemman lähestymistavan.
Ennen Millerin järjestelmää käytettiin erilaisia merkintöjä kristallipintojen kuvaamiseen, mukaan lukien Weiss-parametrit ja Naumann-symbolit. Millerin innovaatio oli käyttää leikkauspisteiden käänteisarvoja, mikä yksinkertaisti monia kristallografisia laskelmia ja tarjosi intuitiivisemman esityksen rinnakkaisista tasoista.
Miller-indeksien omaksuminen kiihtyi Max von Laue'n X-ray-diffraktion löytämisen myötä vuonna 1912 ja William Lawrence Braggin ja William Henry Braggin myöhemmän työn myötä. Heidän tutkimuksensa osoitti Miller-indeksien käytännön hyödyn diffraktiokuvioiden tulkinnassa ja kristallirakenteiden määrittämisessä.
Koko 1900-luvun ajan, kun kristallografia tuli yhä tärkeämmäksi materiaalitieteissä, kiinteässä fysiikassa ja biokemiassa, Miller-indeksit vakiintuivat standardimerkinnäksi. Nykyään ne ovat edelleen välttämättömiä nykyaikaisissa materiaalin karakterisointitekniikoissa, laskennallisessa kristallografiassa ja nanomateriaalien suunnittelussa.
Code Examples for Calculating Miller Indices
1import math
2import numpy as np
3
4def calculate_miller_indices(intercepts):
5 """
6 Laske Miller-indeksit leikkauspisteistä
7
8 Args:
9 intercepts: Kolmonen leikkauspisteitä [a, b, c]
10
11 Returns:
12 Kolmonen Miller-indeksejä [h, k, l]
13 """
14 # Käsittele äärettömyysleikkauspisteitä (rinnakkain akselin kanssa)
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 # Etsi ei-nolla-arvot GCD-laskentaa varten
23 non_zero = [r for r in reciprocals if r != 0]
24
25 if not non_zero:
26 return [0, 0, 0]
27
28 # Skaalaa kohtuullisiin kokonaislukuihin (välttää liukulukujen ongelmat)
29 scale = 1000
30 scaled = [round(r * scale) for r in non_zero]
31
32 # Etsi GCD
33 gcd_value = np.gcd.reduce(scaled)
34
35 # Muunna takaisin pienimmiksi kokonaisluvuiksi
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# Esimerkkikäyttö
46intercepts = [2, 3, 6]
47indices = calculate_miller_indices(intercepts)
48print(f"Miller-indeksit leikkauspisteille {intercepts}: {indices}") # Tuloste: [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 // Käsittele äärettömyysleikkauspisteitä
20 const reciprocals = intercepts.map(intercept => {
21 if (intercept === 0 || !isFinite(intercept)) {
22 return 0;
23 }
24 return 1 / intercept;
25 });
26
27 // Etsi ei-nolla-arvot GCD-laskentaa varten
28 const nonZeroReciprocals = reciprocals.filter(val => val !== 0);
29
30 if (nonZeroReciprocals.length === 0) {
31 return [0, 0, 0];
32 }
33
34 // Skaalaa kokonaisluvuiksi välttääksesi liukulukujen ongelmat
35 const scale = 1000;
36 const scaled = nonZeroReciprocals.map(val => Math.round(val * scale));
37
38 // Etsi GCD
39 const divisor = gcdMultiple(scaled);
40
41 // Muunna pienimmiksi kokonaisluvuiksi
42 const millerIndices = reciprocals.map(val =>
43 val === 0 ? 0 : Math.round((val * scale) / divisor)
44 );
45
46 return millerIndices;
47}
48
49// Esimerkki
50const intercepts = [2, 3, 6];
51const indices = calculateMillerIndices(intercepts);
52console.log(`Miller-indeksit leikkauspisteille ${intercepts}: (${indices.join(',')})`);
53// Tuloste: Miller-indeksit leikkauspisteille 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 // Laske käänteisarvot
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 // Laske ei-nolla-arvot
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 // Skaalaa kokonaisluvuiksi
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 // Etsi GCD
60 int divisor = gcdMultiple(scaled);
61
62 // Laske Miller-indeksit
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-indeksit leikkauspisteille " +
80 Arrays.toString(intercepts) + ": " +
81 Arrays.toString(indices));
82 // Tuloste: Miller-indeksit leikkauspisteille [2.0, 3.0, 6.0]: [3, 2, 1]
83 }
84}
85
1' Excel VBA -toiminto Miller-indeksien laskemiseen
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 ' Laske käänteisarvot
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 ' Laske ei-nolla-arvot
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 ' Skaalaa kokonaisluvuiksi
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 ' Etsi GCD
59 gcdVal = scaledVals(1)
60 For i = 2 To nonZeroCount
61 gcdVal = GCD(gcdVal, scaledVals(i))
62 Next i
63
64 ' Laske Miller-indeksit
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' Käyttö Excelissä:
102' =CalculateMillerIndices(2, 3, 6)
103' Tuloste: (3,2,1)
104
1#include <iostream>
2#include <vector>
3#include <cmath>
4#include <numeric>
5#include <algorithm>
6
7// Laske kahden numeron GCD
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// Laske useiden numeroiden GCD
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// Laske Miller-indeksit leikkauspisteistä
31std::vector<int> calculateMillerIndices(const std::vector<double>& intercepts) {
32 std::vector<double> reciprocals;
33
34 // Laske käänteisarvot
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 // Etsi ei-nolla-arvot
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 // Skaalaa kokonaisluvuiksi
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 // Etsi GCD
63 int divisor = gcdMultiple(scaled);
64
65 // Muunna pienimmiksi kokonaisluvuiksi
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-indeksit leikkauspisteille [";
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 // Tuloste: Miller-indeksit leikkauspisteille [2, 3, 6]: (3,2,1)
96
97 return 0;
98}
99
Numerical Examples
Tässä on joitakin yleisiä esimerkkejä Miller-indeksien laskennasta:
-
Esimerkki 1: Vakio tapaus
- Leikkauspisteet: (2, 3, 6)
- Käänteisarvot: (1/2, 1/3, 1/6)
- Kertomalla pienimmällä yhteisellä monikerralla (6): (3, 2, 1)
- Miller-indeksit: (3,2,1)
-
Esimerkki 2: Taso rinnakkain akselin kanssa
- Leikkauspisteet: (1, ∞, 2)
- Käänteisarvot: (1, 0, 1/2)
- Kertomalla 2: (2, 0, 1)
- Miller-indeksit: (2,0,1)
-
Esimerkki 3: Negatiiviset leikkauspisteet
- Leikkauspisteet: (-1, 2, 3)
- Käänteisarvot: (-1, 1/2, 1/3)
- Kertomalla 6: (-6, 3, 2)
- Miller-indeksit: (-6,3,2)
-
Esimerkki 4: Murtoluku leikkauspisteet
- Leikkauspisteet: (1/2, 1/3, 1/4)
- Käänteisarvot: (2, 3, 4)
- Jo kokonaislukumuodossa
- Miller-indeksit: (2,3,4)
-
Esimerkki 5: Erityinen taso (100)
- Leikkauspisteet: (1, ∞, ∞)
- Käänteisarvot: (1, 0, 0)
- Miller-indeksit: (1,0,0)
Frequently Asked Questions
What are Miller indices used for?
Miller-indeksejä käytetään kristallitasojen ja suuntien tunnistamiseen ja kuvaamiseen. Ne tarjoavat standardoidun merkintätavan, joka auttaa kristallografeja, materiaalitieteilijöitä ja insinöörejä kommunikoimaan erityisistä kristallisuunnista. Miller-indeksit ovat välttämättömiä X-ray-diffraktiokuvioiden analysoimisessa, kristallikasvun ymmärtämisessä, tasovälin laskemisessa ja erilaisten fysikaalisten ominaisuuksien tutkimisessa, jotka riippuvat kristallografisesta suuntauksesta.
How do I handle a plane that is parallel to one of the axes?
Kun taso on rinnakkain akselin kanssa, se ei koskaan leikkaa kyseistä akselia, joten leikkauspiste katsotaan olevan äärettömyys. Miller-indeksimerkinnässä äärettömyyden käänteisarvo on nolla, joten vastaava Miller-indeksi tulee nollaksi. Esimerkiksi taso, joka on rinnakkain y-akselin kanssa, olisi leikkauspisteet (a, ∞, c) ja Miller-indeksit (h,0,l).
What do negative Miller indices mean?
Negatiiviset Miller-indeksit tarkoittavat, että taso leikkaa vastaavan akselin negatiivisella puolella alkuperästä. Kristallografiassa negatiiviset indeksit merkitään yleensä viivalla numeron ylle, kuten (h̄kl). Negatiiviset indeksit edustavat tasoja, jotka ovat vastaavia positiivisten vastineidensa kanssa fysikaalisten ominaisuuksien suhteen, mutta niillä on erilaiset suuntaukset.
How do Miller indices relate to crystal structure?
Miller-indeksit liittyvät suoraan atomijärjestykseen kristallirakenteessa. Tason, jolla on erityiset Miller-indeksit, väli (dhkl) riippuu kristallijärjestelmästä ja verkko-parametreista. X-ray-diffraktiossa nämä tasot toimivat heijastustasoina Braggin lain mukaan, tuottaen tyypillisiä diffraktiokuvioita, jotka paljastavat kristallirakenteen.
What is the difference between Miller indices and Miller-Bravais indices?
Miller-indeksit käyttävät kolmea kokonaislukua (h,k,l) ja ovat sopivia useimmille kristallijärjestelmille. Miller-Bravais-indeksit käyttävät neljää kokonaislukua (h,k,i,l) ja on erityisesti suunniteltu kuusikulmaisille kristallijärjestelmille. Neljäs indeksi, i, on ylimääräinen (i = -(h+k)), mutta auttaa ylläpitämään kuusikulmaisten järjestelmien symmetriaa ja tekee vastaavista tasoista helpommin tunnistettavia.
How do I calculate the angle between two crystal planes?
Kahden tason, joiden Miller-indeksit ovat (h₁,k₁,l₁) ja (h₂,k₂,l₂) kuutioisessa kristallijärjestelmässä, väli θ voidaan laskea seuraavasti:
Ei-kuutioisissa järjestelmissä laskenta on monimutkaisempaa ja siihen liittyy kristallijärjestelmän metriikkatensorin käyttö.
What is the relationship between Miller indices and d-spacing?
d-väli (tasoväli) tasoilla, joilla on Miller-indeksit (h,k,l), riippuu kristallijärjestelmästä. Kuutioisessa kristallissa, jonka verkko-parametri on a, suhde on:
Muille kristallijärjestelmille sovelletaan monimutkaisempia kaavoja, jotka sisältävät erityiset verkko-parametrit.
Can Miller indices be fractions?
Ei, perinteisesti Miller-indeksit ovat aina kokonaislukuja. Jos laskenta tuottaa aluksi murtolukuja, ne muunnetaan pienimmiksi kokonaisluvuiksi, jotka säilyttävät saman suhteen. Tämä tapahtuu kertomalla kaikki arvot pienimmällä yhteisellä monikerralla.
How do I determine the Miller indices of a crystal face experimentally?
Miller-indeksit kristallipinnoille voidaan määrittää kokeellisesti käyttämällä X-ray-diffraktiota, elektronidiffraktiota tai optista goniometriaa. X-ray-diffraktiossa kulmat, joilla diffraktio tapahtuu, liittyvät tasoväliin kristallitasoilla Braggin lain kautta, mikä voi auttaa tunnistamaan vastaavat Miller-indeksit.
What are the Miller indices of common crystal planes?
Joihinkin yleisiin kristallitasoihin ja niiden Miller-indekseihin kuuluvat:
- (100), (010), (001): Pääkuutioiset pinnat
- (110), (101), (011): Kuutioiden diagonaaliset pinnat
- (111): Oktaedrinen pinta kuutioisissa järjestelmissä
- (112): Yleinen liukutasot kehon keskipisteen kuutioisissa metalleissa
References
-
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.
Käytä Miller Indices Calculatoria tänään, jotta voit nopeasti ja tarkasti määrittää Miller-indeksit mille tahansa kristallitasolle. Olitpa opiskelija, joka oppii kristallografiaa, tutkija, joka analysoi materiaalirakenteita, tai insinööri, joka suunnittelee uusia materiaaleja, tämä työkalu auttaa sinua tunnistamaan ja ymmärtämään kristallitasoja vaivattomasti.
Liittyvät Työkalut
Löydä lisää työkaluja, jotka saattavat olla hyödyllisiä työnkulullesi