Code covered by the BSD License  

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Highlights from
Drude-Lorentz and Debye-Lorentz models for the dielectric constant of metals and water

4.8 | 12 ratings Rate this file 38 Downloads (last 30 days) File Size: 3.99 KB File ID: #18040 Version: 1.3
image thumbnail

Drude-Lorentz and Debye-Lorentz models for the dielectric constant of metals and water


Bora Ung (view profile)


16 Dec 2007 (Updated )

Computes the complex permittivity of many metals and water with input wavelength

| Watch this File

File Information

This code computes the complex dielectric constant (i.e. relative permittivity) and the refractive index of various metals using either the Lorentz-Drude (LD) or the Drude model (D) as a function of input light wavelength.

Additionally, it may compute the dielectric constant of pure water using a Debye-Lorentz model.

Choice of materials: silver, aluminum, gold, copper, chromium, nickel, tungsten, titanium, beryllium, palladium, platinum, triply distilled water.

Reference: Bora Ung and Yunlong Sheng, Interference of surface waves in a metallic nanoslit, Optics Express 15, 1182-1190 (2007).

Required Products MATLAB
MATLAB release MATLAB 7.4 (R2007a)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (22)
26 Apr 2016 11 11

11 11 (view profile)

Help me a lot . Thank you .

09 Feb 2016 Rahul Shaw

Helped me. Thanks..

07 Jan 2016 Bora Ung

Bora Ung (view profile)

To Subhashish: in order to obtain the relative permittivity of Chromium at a given wavelength "lambda" (in meters), you should type the following command:

[epsilon_Re epsilon_Im N] = LD(lambda,'Cr')

Comment only
09 Oct 2015 Subhashish Tiwari

Not able to run this code as it is. If I want to calculate for Chromium- 'Cr', then what changes have to be done ?

Comment only
28 Mar 2015 Reda Ahmed

help me please the program don't march

function varargout = LD(lambda,material,model)
Error: Function definitions are not permitted in this context.

i use matlab 2013 b

Comment only
15 Oct 2014 jimmy

jimmy (view profile)


21 Apr 2014 Qiushi Guo

Extremeley helpful

25 Feb 2014 Hongren

Thank you, very helpful.

05 Jul 2012 scnu

scnu (view profile)

Thanks! It's useful for me.

31 Aug 2011 Johannes Srajer  
25 Jul 2011 Rene

Rene (view profile)

Thank you, it is useful for me too.

21 Apr 2011 chao ding

Thanks! It's very useful for me.

09 Oct 2009 Dominic Bosomtwi

Can someone explain to me how to use the code?
Thanks a lot.

Comment only
13 Jul 2009 Noha Anous

Thanks for uploading such a nice function.
But I have a question, from where are the model equations taken?
are there any approximations?
Because I tried some values and didn't get them the same as I have them in tables found in some papers.
Thanks a lot

Comment only
31 Oct 2008 Bora Ung

Bora Ung (view profile)

As a note, this matlab code was created for and first used in [B. Ung and Y. Sheng, Optics Express, vol.15, pp. 1182-1190 (2007)]

Comment only
28 Oct 2008 JCBod Bodoque

Wonderful file! Do you have any work of your own that I can cite for these fits?

Comment only
15 May 2008 j kim

I think, it's good program!!!

20 Mar 2008 Hyunwoo Kihm

Thanks for valuable information with proper references. Weighting factor of various oscillator made the model fitting almost perfect.

07 Feb 2008 Jin Xu

thanks a lot.

20 Dec 2007 Bora Ung

Thanks Duane for the info. I have already done that a few days ago when I realized that it is possible to make changes. Now there IS NO NEED to make any changes.

Comment only
19 Dec 2007 Duane Hanselman

Rather than tell use what to do to improve the file, why not UPDATE your submission with your latest work? (Do not submit the revised file as a new submission.)

Comment only
17 Dec 2007 Bora Ung

The efficiency can be improved with the following changes:

replace line 183 with: epsilon_r_L = zeros(size(lambda));
replace lines 185-187 with:
epsilon_r_L = epsilon_r_L + (f(k)*omegap^2)*...
(((omega(k)^2)*ones(size(lambda)) - omegalight.^2) -...
eliminate line 190

Hope this file is useful to people as it was to me.

Comment only
27 Nov 2008 1.1

Added a new material (pure water) whose dielectric constant is computed via the Debye-Lorentz model. References are also updated.

01 Dec 2008 1.2

A coding error in the previous version is corrected in this version.

31 Jan 2012 1.3

Updated the value of the physical constant "ehbar" to a more accurate one. Thanks to A. Webster for the tip!

Contact us