Kalkulator Indeks Miller untuk Pengenalan Pelan Kristal

Kira indeks Miller daripada pemotongan pelan kristal dengan alat yang mudah digunakan ini. Penting untuk kristalografi, sains bahan, dan aplikasi fizik keadaan pepejal.

Kalkulator Indeks Miller

Pintas Papan Kristal

Masukkan pintas papan kristal dengan paksi x, y, dan z. Gunakan '0' untuk papan yang selari dengan paksi (pintas infiniti).

Masukkan nombor atau 0 untuk infiniti

Masukkan nombor atau 0 untuk infiniti

Masukkan nombor atau 0 untuk infiniti

Indeks Miller

Indeks Miller untuk papan ini adalah:

(1,1,1)
Salin ke Papan Klip

Visualisasi

Apa itu Indeks Miller?

Indeks Miller adalah sistem notasi yang digunakan dalam kristalografi untuk menentukan papan dan arah dalam kisi kristal.

Untuk mengira indeks Miller (h,k,l) dari pintas (a,b,c):

1. Ambil kebalikan pintas: (1/a, 1/b, 1/c) 2. Tukar kepada set integer terkecil dengan nisbah yang sama 3. Jika papan selari dengan paksi (pintas = infiniti), indeks Miller yang bersesuaian adalah 0

  • Indeks negatif ditunjukkan dengan bar di atas nombor, contohnya, (h̄,k,l)
  • Notasi (hkl) mewakili papan tertentu, manakala {hkl} mewakili keluarga papan yang setara
  • Indeks arah ditulis dalam tanda kurung siku [hkl], dan keluarga arah ditandakan dengan <hkl>
📚

Dokumentasi

Kalkulator Indeks Miller - Tukar Intersepsi Pelan Kristal kepada Notasi hkl

Kalkulator Indeks Miller: Alat Penting untuk Kristalografi

Kalkulator indeks Miller adalah alat dalam talian yang berkuasa untuk ahli kristalografi, saintis bahan, dan pelajar untuk menentukan indeks Miller pelan kristal. Indeks Miller adalah sistem notasi yang digunakan dalam kristalografi untuk menentukan pelan dan arah dalam jaringan kristal. Kalkulator indeks Miller ini membolehkan anda dengan mudah menukar intersepsi pelan kristal dengan paksi koordinat kepada indeks Miller (hkl) yang bersesuaian, memberikan cara yang standard untuk mengenal pasti dan berkomunikasi tentang pelan kristal tertentu.

Indeks Miller adalah asas untuk memahami struktur kristal dan sifat-sifatnya. Dengan mewakili pelan dengan satu set tiga integer yang mudah (h,k,l), indeks Miller membolehkan saintis menganalisis corak difraksi sinar-X, meramalkan tingkah laku pertumbuhan kristal, mengira jarak antara pelan, dan mengkaji pelbagai sifat fizikal yang bergantung kepada orientasi kristalografi.

Apa Itu Indeks Miller dalam Kristalografi?

Indeks Miller adalah satu set tiga integer (h,k,l) yang mentakrifkan satu keluarga pelan selari dalam jaringan kristal. Indeks ini diperoleh daripada kebalikan intersepsi pecahan yang dibuat oleh satu pelan dengan paksi kristalografi. Notasi indeks Miller memberikan cara yang standard untuk mengenal pasti pelan kristal tertentu dalam struktur kristal, menjadikannya penting untuk aplikasi kristalografi dan sains bahan.

Perwakilan Visual Indeks Miller

x y z

O

a=2 b=3 c=6

(3,2,1) Pelan

Pelan Kristal Indeks Miller (3,2,1)

Visualisasi 3D pelan kristal dengan indeks Miller (3,2,1). Pelan ini memotong paksi x, y, dan z pada titik 2, 3, dan 6 masing-masing, menghasilkan indeks Miller (3,2,1) setelah mengambil kebalikan dan mencari set integer terkecil dengan nisbah yang sama.

Formula Indeks Miller dan Kaedah Pengiraan

Untuk mengira indeks Miller (h,k,l) bagi pelan kristal, ikuti langkah matematik berikut menggunakan kalkulator indeks Miller kami:

  1. Tentukan intersepsi pelan dengan paksi kristalografi x, y, dan z, memberikan nilai a, b, dan c.
  2. Ambil kebalikan intersepsi ini: 1/a, 1/b, 1/c.
  3. Tukar kebalikan ini kepada set integer terkecil yang mengekalkan nisbah yang sama.
  4. Tiga integer yang dihasilkan adalah indeks Miller (h,k,l).

Secara matematik, ini boleh dinyatakan sebagai:

h:k:l=1a:1b:1ch : k : l = \frac{1}{a} : \frac{1}{b} : \frac{1}{c}

Di mana:

  • (h,k,l) adalah indeks Miller
  • a, b, c adalah intersepsi pelan dengan paksi x, y, dan z, masing-masing

Kes Istimewa dan Konvensyen

Beberapa kes istimewa dan konvensyen adalah penting untuk difahami:

  1. Intersepsi Infiniti: Jika satu pelan selari dengan satu paksi, intersepsinya dianggap infiniti, dan indeks Miller yang bersesuaian menjadi sifar.

  2. Indeks Negatif: Jika satu pelan memotong satu paksi di sisi negatif asal, indeks Miller yang bersesuaian adalah negatif, ditandakan dengan bar di atas nombor dalam notasi kristalografi, contohnya, (h̄kl).

  3. Intersepsi Pecahan: Jika intersepsi adalah pecahan, ia ditukar kepada integer dengan mendarab dengan kelipatan bersama terkecil.

  4. Penyederhanaan: Indeks Miller sentiasa dikurangkan kepada set integer terkecil yang mengekalkan nisbah yang sama.

Cara Menggunakan Kalkulator Indeks Miller: Panduan Langkah demi Langkah

Kalkulator indeks Miller kami menyediakan cara yang mudah untuk menentukan indeks Miller bagi mana-mana pelan kristal. Berikut adalah cara untuk menggunakan kalkulator indeks Miller:

  1. Masukkan Intersepsi: Masukkan nilai di mana pelan memotong paksi x, y, dan z.

    • Gunakan nombor positif untuk intersepsi di sisi positif asal.
    • Gunakan nombor negatif untuk intersepsi di sisi negatif.
    • Masukkan "0" untuk pelan yang selari dengan satu paksi (intersepsi infiniti).
  2. Lihat Keputusan: Kalkulator akan secara automatik mengira dan memaparkan indeks Miller (h,k,l) untuk pelan yang ditentukan.

  3. Visualisasikan Pelan: Kalkulator termasuk visualisasi 3D untuk membantu anda memahami orientasi pelan dalam jaringan kristal.

  4. Salin Keputusan: Gunakan butang "Salin ke Papan Klip" untuk memindahkan indeks Miller yang dikira ke aplikasi lain dengan mudah.

Contoh Pengiraan Indeks Miller

Mari kita lihat satu contoh:

Katakan satu pelan memotong paksi x, y, dan z pada titik 2, 3, dan 6 masing-masing.

  1. Intersepsi adalah (2, 3, 6).
  2. Mengambil kebalikan: (1/2, 1/3, 1/6).
  3. Untuk mencari set integer terkecil dengan nisbah yang sama, mendarab dengan kelipatan bersama terkecil bagi penyebut (LCM bagi 2, 3, 6 = 6): (1/2 × 6, 1/3 × 6, 1/6 × 6) = (3, 2, 1).
  4. Oleh itu, indeks Miller adalah (3,2,1).

Aplikasi Indeks Miller dalam Sains dan Kejuruteraan

Indeks Miller mempunyai pelbagai aplikasi di pelbagai bidang sains dan kejuruteraan, menjadikan kalkulator indeks Miller penting untuk:

Kristalografi dan Difraksi Sinar-X

Indeks Miller adalah penting untuk mentafsir corak difraksi sinar-X. Jarak antara pelan kristal, yang dikenali dengan indeks Miller mereka, menentukan sudut di mana sinar-X difraksi, mengikuti undang-undang Bragg:

nλ=2dhklsinθn\lambda = 2d_{hkl}\sin\theta

Di mana:

  • nn adalah integer
  • λ\lambda adalah panjang gelombang sinar-X
  • dhkld_{hkl} adalah jarak antara pelan dengan indeks Miller (h,k,l)
  • θ\theta adalah sudut kejadian

Sains Bahan dan Kejuruteraan

  1. Analisis Tenaga Permukaan: Pelan kristal yang berbeza mempunyai tenaga permukaan yang berbeza, mempengaruhi sifat seperti pertumbuhan kristal, katalisis, dan lekatan.

  2. Sifat Mekanikal: Orientasi pelan kristal mempengaruhi sifat mekanikal seperti sistem gelincir, pelan pecah, dan tingkah laku patah.

  3. Pembuatan Semikonduktor: Dalam fabrikasi semikonduktor, pelan kristal tertentu dipilih untuk pertumbuhan epitaxial dan fabrikasi peranti kerana sifat elektronik mereka.

  4. Analisis Tekstur: Indeks Miller membantu mencirikan orientasi yang diutamakan (tekstur) dalam bahan polikristalin, yang mempengaruhi sifat fizikal mereka.

Mineralogi dan Geologi

Ahli geologi menggunakan indeks Miller untuk menerangkan muka kristal dan pelan pecah dalam mineral, membantu dengan pengenalan dan memahami keadaan pembentukan.

Aplikasi Pendidikan

Indeks Miller adalah konsep asas yang diajar dalam kursus sains bahan, kristalografi, dan fizik keadaan pepejal, menjadikan kalkulator ini alat pendidikan yang berharga.

Alternatif kepada Indeks Miller

Walaupun indeks Miller adalah notasi yang paling banyak digunakan untuk pelan kristal, beberapa sistem alternatif wujud:

  1. Indeks Miller-Bravais: Notasi empat indeks (h,k,i,l) yang digunakan untuk sistem kristal heksagon, di mana i = -(h+k). Notasi ini lebih mencerminkan simetri struktur heksagon.

  2. Simbol Weber: Digunakan terutamanya dalam literatur lama, khususnya untuk menerangkan arah dalam kristal kubik.

  3. Vektor Jaringan Langsung: Dalam beberapa kes, pelan diterangkan menggunakan vektor jaringan langsung daripada indeks Miller.

  4. Posisi Wyckoff: Untuk menerangkan kedudukan atom dalam struktur kristal daripada pelan.

Walaupun terdapat alternatif ini, indeks Miller tetap menjadi notasi standard kerana kesederhanaan dan kebolehgunaan sejagatnya di semua sistem kristal.

Sejarah Indeks Miller

Sistem indeks Miller dibangunkan oleh mineralogis dan ahli kristalografi Britain, William Hallowes Miller pada tahun 1839, diterbitkan dalam karyanya "A Treatise on Crystallography." Notasi Miller dibina berdasarkan kerja awal oleh Auguste Bravais dan yang lain, tetapi memberikan pendekatan yang lebih elegan dan konsisten secara matematik.

Sebelum sistem Miller, pelbagai notasi digunakan untuk menerangkan muka kristal, termasuk parameter Weiss dan simbol Naumann. Inovasi Miller adalah menggunakan kebalikan intersepsi, yang menyederhanakan banyak pengiraan kristalografi dan memberikan representasi yang lebih intuitif bagi pelan selari.

Penerimaan indeks Miller dipercepatkan dengan penemuan difraksi sinar-X oleh Max von Laue pada tahun 1912 dan kerja seterusnya oleh William Lawrence Bragg dan William Henry Bragg. Penyelidikan mereka menunjukkan kegunaan praktikal indeks Miller dalam mentafsir corak difraksi dan menentukan struktur kristal.

Sepanjang abad ke-20, ketika kristalografi menjadi semakin penting dalam sains bahan, fizik keadaan pepejal, dan biokimia, indeks Miller menjadi kukuh sebagai notasi standard. Hari ini, mereka tetap penting dalam teknik pencirian bahan moden, kristalografi komputasi, dan reka bentuk nanomaterial.

Contoh Kod untuk Mengira Indeks Miller

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
import java.util.Arrays; public class MillerIndicesCalculator { public static int gcd(int a, int b) { a = Math.abs(a); b = Math.abs(b); while (b != 0) { int temp = b; b = a % b; a = temp; } return a; } public static int gcdMultiple(int[] numbers) { int result = numbers[0]; for (int i = 1; i < numbers.length; i++) { result = gcd(result, numbers[i]); } return result; } public static int[] calculateMillerIndices(double[] intercepts) { double[] reciprocals = new double[intercepts.length]; // Calculate reciprocals for (int i = 0; i < intercepts.length; i++) { if (intercepts[i] == 0 || Double.isInfinite(intercepts[i])) { reciprocals[i] = 0; } else { reciprocals[i] = 1 / intercepts[i]; } } // Count non-zero values int nonZeroCount = 0; for (double r : reciprocals) { if (r != 0) nonZeroCount++; } if (nonZeroCount == 0) { return new int[]{0, 0, 0}; } // Scale to integers int scale = 1000; int[] scaled = new int[nonZeroCount]; int index = 0; for (double r : reciprocals) { if (r != 0) { scaled[index++] = (int) Math.round(r * scale); } } // Find GCD int divisor = gcd