@galihru/mnp-mie 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +35 -32
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,50 +1,59 @@
1
- # @galihru/mnp-mie
1
+ # @galihru/mnp-mie
2
2
 
3
- Rayleigh quasi-static scattering formulas for spherical metallic nanoparticles in a homogeneous dielectric medium. Computes complex polarizability and electromagnetic cross sections � extinction, scattering, and absorption � within the electric-dipole approximation, valid for particle radius *a* � ?.
3
+ Rayleigh quasi-static scattering formulas for spherical metallic nanoparticles
4
+ in a homogeneous dielectric medium. Computes complex polarizability and
5
+ electromagnetic cross sections -- extinction, scattering, and absorption --
6
+ within the electric-dipole approximation, valid for particle radius a << lambda.
4
7
 
5
8
  ---
6
9
 
7
10
  ## Physical Background
8
11
 
9
- In the Rayleigh (quasi-static) limit, the electromagnetic response of a small sphere is fully characterised by its induced electric dipole moment. The key quantity is the complex polarizability a, which encodes both radiative (scattering) and non-radiative (absorption) optical losses. This framework underpins localized surface plasmon resonance (LSPR) spectroscopy, photothermal therapy, and surface-enhanced sensing.
12
+ In the Rayleigh (quasi-static) limit, the electromagnetic response of a small
13
+ sphere is fully characterised by its induced electric dipole moment. The key
14
+ quantity is the complex polarizability alpha, which encodes both radiative
15
+ (scattering) and non-radiative (absorption) optical losses. This framework
16
+ underpins localized surface plasmon resonance (LSPR) spectroscopy, photothermal
17
+ therapy, and surface-enhanced sensing.
10
18
 
11
19
  ---
12
20
 
13
21
  ## Implemented Formulations
14
22
 
15
- ### 1. Quasi-static Polarizability (ClausiusMossotti)
23
+ ### 1. Quasi-static Polarizability (Clausius-Mossotti)
16
24
 
17
- For a sphere of radius *a* with permittivity e? in an embedding medium with permittivity e?:
25
+ For a sphere of radius *a* with permittivity eps_p in an embedding medium with
26
+ permittivity eps_m:
18
27
 
19
- ![a = 4pa�(ep-em)/(ep+2em)](https://latex.codecogs.com/svg.latex?\alpha=4\pi%20a^3\frac{\varepsilon_p-\varepsilon_m}{\varepsilon_p+2\varepsilon_m}\quad[\mathrm{nm}^3])
28
+ ![alpha](https://latex.codecogs.com/svg.latex?\alpha=4\pi%20a^3\frac{\varepsilon_p-\varepsilon_m}{\varepsilon_p+2\varepsilon_m}\quad[\mathrm{nm}^3])
20
29
 
21
- The **Fr�hlich resonance** (LSPR condition) occurs when:
30
+ The **Frohlich resonance** (LSPR condition) occurs when:
22
31
 
23
- ![Re(ep + 2em) = 0](https://latex.codecogs.com/svg.latex?\mathrm{Re}(\varepsilon_p+2\varepsilon_m)=0)
32
+ ![Frohlich](https://latex.codecogs.com/svg.latex?\mathrm{Re}(\varepsilon_p+2\varepsilon_m)=0)
24
33
 
25
34
  ---
26
35
 
27
36
  ### 2. Wave Number in the Embedding Medium
28
37
 
29
- ![k = (2p/?)vem](https://latex.codecogs.com/svg.latex?k=\frac{2\pi}{\lambda}\sqrt{\varepsilon_m}\quad[\mathrm{nm}^{-1}])
38
+ ![k in medium](https://latex.codecogs.com/svg.latex?k=\frac{2\pi}{\lambda}\sqrt{\varepsilon_m}\quad[\mathrm{nm}^{-1}])
30
39
 
31
- where ? is the free-space wavelength in nanometres.
40
+ where lambda is the free-space wavelength in nanometres.
32
41
 
33
42
  ---
34
43
 
35
44
  ### 3. Electromagnetic Cross Sections
36
45
 
37
- **Extinction cross section** total power removed from the incident beam:
46
+ **Extinction cross section** -- total power removed from the incident beam:
38
47
 
39
- ![Cext = k Im(a)](https://latex.codecogs.com/svg.latex?C_{\mathrm{ext}}=k\,\mathrm{Im}(\alpha)\quad[\mathrm{nm}^2])
48
+ ![C_ext](https://latex.codecogs.com/svg.latex?C_{\mathrm{ext}}=k\,\mathrm{Im}(\alpha)\quad[\mathrm{nm}^2])
40
49
 
41
- **Scattering cross section** power re-radiated as scattered light:
50
+ **Scattering cross section** -- power re-radiated as scattered light:
42
51
 
43
- ![Csca = |k|4/(6p)|a|�](https://latex.codecogs.com/svg.latex?C_{\mathrm{sca}}=\frac{|k|^4}{6\pi}|\alpha|^2\quad[\mathrm{nm}^2])
52
+ ![C_sca](https://latex.codecogs.com/svg.latex?C_{\mathrm{sca}}=\frac{|k|^4}{6\pi}|\alpha|^2\quad[\mathrm{nm}^2])
44
53
 
45
- **Absorption cross section** power dissipated as Ohmic heat:
54
+ **Absorption cross section** -- power dissipated as Ohmic heat:
46
55
 
47
- ![Cabs = Cext - Csca](https://latex.codecogs.com/svg.latex?C_{\mathrm{abs}}=C_{\mathrm{ext}}-C_{\mathrm{sca}}\quad[\mathrm{nm}^2])
56
+ ![C_abs](https://latex.codecogs.com/svg.latex?C_{\mathrm{abs}}=C_{\mathrm{ext}}-C_{\mathrm{sca}}\quad[\mathrm{nm}^2])
48
57
 
49
58
  ---
50
59
 
@@ -60,7 +69,7 @@ npm install @galihru/mnp-mie
60
69
 
61
70
  ### `rayleighPolarizability(radiusNm, epsParticle, epsMedium)`
62
71
 
63
- Returns the complex polarizability a of a sphere.
72
+ Returns the complex polarizability alpha of a sphere.
64
73
 
65
74
  ```js
66
75
  import { complex, rayleighPolarizability } from "@galihru/mnp-mie";
@@ -69,14 +78,14 @@ const epsParticle = complex(-7.45, 1.23); // Au at 548 nm
69
78
  const epsMedium = complex(1.769, 0.0); // water
70
79
 
71
80
  const alpha = rayleighPolarizability(50, epsParticle, epsMedium);
72
- // ? { re: ..., im: ... } [nm]
81
+ // -> { re: ..., im: ... } [nm^3]
73
82
  ```
74
83
 
75
84
  ---
76
85
 
77
86
  ### `rayleighCrossSections(wavelengthNm, radiusNm, epsParticle, epsMedium)`
78
87
 
79
- Returns extinction, scattering, and absorption cross sections in nm�.
88
+ Returns extinction, scattering, and absorption cross sections in nm^2.
80
89
 
81
90
  ```js
82
91
  import { complex, rayleighCrossSections } from "@galihru/mnp-mie";
@@ -86,16 +95,16 @@ const epsMedium = complex(1.769, 0.0);
86
95
 
87
96
  // Single wavelength
88
97
  const cs = rayleighCrossSections(548.1, 50, epsParticle, epsMedium);
89
- // ? { cExt: ..., cSca: ..., cAbs: ... } [nm]
98
+ // -> { cExt: ..., cSca: ..., cAbs: ... } [nm^2]
90
99
 
91
100
  // Spectral scan (array input)
92
- const cs = rayleighCrossSections(
101
+ const scan = rayleighCrossSections(
93
102
  [400, 450, 500, 548, 600, 700],
94
103
  50,
95
104
  [eps400, eps450, eps500, eps548, eps600, eps700],
96
105
  [em400, em450, em500, em548, em600, em700]
97
106
  );
98
- // ? [{ cExt, cSca, cAbs }, ...]
107
+ // -> [{ cExt, cSca, cAbs }, ...]
99
108
  ```
100
109
 
101
110
  ---
@@ -108,19 +117,13 @@ Constructs a complex number `{ re, im }`.
108
117
  import { complex } from "@galihru/mnp-mie";
109
118
 
110
119
  const z = complex(-5.2, 2.1);
111
- // ? { re: -5.2, im: 2.1 }
120
+ // -> { re: -5.2, im: 2.1 }
112
121
  ```
113
122
 
114
123
  ---
115
124
 
116
- ## Keywords
117
-
118
- mie-scattering � rayleigh � nanoparticle � cross-section � extinction � polarizability � plasmonics � nanophotonics � lspr � absorption
119
-
120
- ---
121
-
122
125
  ## Author
123
126
 
124
- **GALIH RIDHO UTOMO** g4lihru@students.unnes.ac.id
125
- Universitas Negeri Semarang (UNNES)
126
- License: GPL-2.0-only
127
+ **GALIH RIDHO UTOMO** | g4lihru@students.unnes.ac.id
128
+ Universitas Negeri Semarang (UNNES)
129
+ License: GPL-2.0-only
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@galihru/mnp-mie",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "description": "Rayleigh quasi-static scattering: polarizability and electromagnetic cross sections for spherical nanoparticles.",
5
5
  "type": "module",
6
6
  "main": "./src/index.js",