Should be found out:
- Scattering cross-section according to Kinematic Scattering
- Comparing it with the one derived by van den Hulst
- Find general series expansion for K(w) and then calculate Q_abs, subsequently Q_sca in general form
Is phase difference too big in case of X-Rays? If yes, then refractive index of the particle must be differentiating by larger amount than the surrounding.
Monday, February 05, 2007
Monday, January 22, 2007
No hope for Mathematica
There is no hope as such for Mathematica problem. I would have to reply solely on IDL and probable integration of which with Mathematica. I still have one more option open, to write iteration method inside Mathematica. One such fine example can be found here:
pi[n_, theta_] := Module[{p1,p2}, p1=0; p2=1; Do[ p1=p2*(2i-1)/(i-1) Cos[theta] - i/(i-1) p1; tmp=p2; p2=p1; p1=tmp,{i,2,n}] p2 ]
But it doesn't make a sense to try too much with Mathematica, when IDL is working pretty good.
pi[n_, theta_] := Module[{p1,p2}, p1=0; p2=1; Do[ p1=p2*(2i-1)/(i-1) Cos[theta] - i/(i-1) p1; tmp=p2; p2=p1; p1=tmp,{i,2,n}] p2 ]
But it doesn't make a sense to try too much with Mathematica, when IDL is working pretty good.
Friday, January 19, 2007
Problem with Mathematica
The problem with Mathematica intensified. It seems that recursion is not working properly with Mathematica. The question has been submitted in the forum. It should be seen, what others understand for it.
But IDL is working OK. I have found the error with the understanding that if “nang” has been taken for granted for “q” wasn't a good idea, since algorithm relies heavily on value of “cos(theta)” which has reflective values on either side of 90 degrees. So now the conversion from q to angle has been introduced. Product of which can be seen next time. No intense involvment has been on my side due to time constraints.
But IDL is working OK. I have found the error with the understanding that if “nang” has been taken for granted for “q” wasn't a good idea, since algorithm relies heavily on value of “cos(theta)” which has reflective values on either side of 90 degrees. So now the conversion from q to angle has been introduced. Product of which can be seen next time. No intense involvment has been on my side due to time constraints.
Thursday, January 18, 2007
Major IDL Changes
IDL programme has be reedited. All the mistakes relating to misunderstanding of role of “j” and “jj” has been cleared. Now the next step would be to try to integrate the relation q=2k sin(theta/2) must be introduced. All the values related to “nang” must be taken care after. Optimism is there to be able to implement it with “q” vector. The attempt with Mathematica had not been so successful yet. Trouble remains with exact execution of recursive function.
It is written now as,
pi[i_,theta_] := (2i-1)/(i-1) Cos[theta] pi [i-1, theta] - n/(n-1) pi[i-2, theta]
tau[i_,theta_] := I Cos[theta] pi[i,theta] - (n+1) pi[i-1,theta]
The problem still lies with initialization pi[0,theta] = 0, pi[1,theta] = 1 for all 'theta'.
Then with writing S1 & S2 function in loop, which are, in fact, Sum over 1-nstop, probably can be written like,
S1Temp[l_,theta_] := (2l+1)/(l(l+1)) a[l] pi[l,theta] + b[l] tau[l,theta]
then
S1[theta_] = Sum[S1Temp[l,theta], {l,1,nstop}]
It is written now as,
pi[i_,theta_] := (2i-1)/(i-1) Cos[theta] pi [i-1, theta] - n/(n-1) pi[i-2, theta]
tau[i_,theta_] := I Cos[theta] pi[i,theta] - (n+1) pi[i-1,theta]
The problem still lies with initialization pi[0,theta] = 0, pi[1,theta] = 1 for all 'theta'.
Then with writing S1 & S2 function in loop, which are, in fact, Sum over 1-nstop, probably can be written like,
S1Temp[l_,theta_] := (2l+1)/(l(l+1)) a[l] pi[l,theta] + b[l] tau[l,theta]
then
S1[theta_] = Sum[S1Temp[l,theta], {l,1,nstop}]
Wednesday, January 17, 2007
New plan
Preparation:
Read given 2 papers & Jens-Nielson for units-problem
Jens-Nielson & Klaus's Arbeit for Chapter I & II
Write:
Debye Series
Programming:
Implementation of loops in Mathematica
Regarding Debye Series:
some papers and van den Hulst and original Debye paper
-----
done for today:
Modification in IDL programme. S1(theta) & S2(theta) ranges over n(1->nstop) and “nang” belongs to “theta”. The array for S1 & S2 are limited for allowed number of angles, so should be array of “Mie”.
In Mathematica, all the initialization should be made, then S1 & S2 must be calculated, where they have Table form.
Read given 2 papers & Jens-Nielson for units-problem
Jens-Nielson & Klaus's Arbeit for Chapter I & II
Write:
Debye Series
Programming:
Implementation of loops in Mathematica
Regarding Debye Series:
some papers and van den Hulst and original Debye paper
-----
done for today:
Modification in IDL programme. S1(theta) & S2(theta) ranges over n(1->nstop) and “nang” belongs to “theta”. The array for S1 & S2 are limited for allowed number of angles, so should be array of “Mie”.
In Mathematica, all the initialization should be made, then S1 & S2 must be calculated, where they have Table form.
Tuesday, January 16, 2007
Understanding Recursion
nang: number of angles between 0-90 degrees
dang: defines angles for calculation (kleinste Einheit)
For j: 1 -- nang
theta = (j-1) * nang
mu_j = cos(theta)
where dang = 0.5*Pi * 1/(nang-1)
mxnang: maximum allowable “nang”
Possibility I:
mu = Table[0,{mxnang}]
For [i=o, i<= nang, theta = (i-1)*dang; mu[[i+1]] = cos(theta); i++]
Possibility II:
mu = Table[theta=(i-1)*dang; cos(theta), {i,0,nang}]
mu = (theta=(i-1)*dang; cos(theta))&/@ Range[0,nang]
mu = Array[theta=(i-1)*dang; cos(theta)&, nang, 0]
dang: defines angles for calculation (kleinste Einheit)
For j: 1 -- nang
theta = (j-1) * nang
mu_j = cos(theta)
where dang = 0.5*Pi * 1/(nang-1)
mxnang: maximum allowable “nang”
Possibility I:
mu = Table[0,{mxnang}]
For [i=o, i<= nang, theta = (i-1)*dang; mu[[i+1]] = cos(theta); i++]
Possibility II:
mu = Table[theta=(i-1)*dang; cos(theta), {i,0,nang}]
mu = (theta=(i-1)*dang; cos(theta))&/@ Range[0,nang]
mu = Array[theta=(i-1)*dang; cos(theta)&, nang, 0]
Monday, January 15, 2007
Mathematica Reworking
Writing
◆ Explanation w.r.t. Debye Series
Programming
◆ Implementation of recursive algorithm in Mathematica
◆ Resurrecting the idea of saving data for Legendre Polynome
◆ Improving IDL code
Saving the data of Legendre Polynome and later reusing it for the Mathematica code doesn't save necessarily lotta time. Just 36% of time has been saved, i.e. in case of 100 mulitiplicity where it takes 20613 seconds, I can complete this with 2168.3865 min. i.e. 36 Hrs. instead of 57 Hrs.
The next step would be to try recursive algorithm in Mathematica.
◆ Explanation w.r.t. Debye Series
Programming
◆ Implementation of recursive algorithm in Mathematica
◆ Resurrecting the idea of saving data for Legendre Polynome
◆ Improving IDL code
Saving the data of Legendre Polynome and later reusing it for the Mathematica code doesn't save necessarily lotta time. Just 36% of time has been saved, i.e. in case of 100 mulitiplicity where it takes 20613 seconds, I can complete this with 2168.3865 min. i.e. 36 Hrs. instead of 57 Hrs.
The next step would be to try recursive algorithm in Mathematica.
Tuesday, May 30, 2006
Mie scattering: Introduction
The scattering of light on small particles are normally divided between two explanations: Rayleigh Scattering, named after Lord Rayleigh and Mie Scattering, named after Gustav Mie.
Rayleigh scattering refers to the scattering of light off of the molecules of the air, and can be extended to scattering from particles up to about a tenth of the wavelength of the light. The most common example is blueness of the sky.
For particle sizes larger than a wavelength, Mie scattering predominates and it is not strongly wavelength dependent. The best example is white glare around the sun, where the air is dusty. Mie scattering, also populalrly known as, Mie theory provides rigorous solutions for light scattering by an isotropic sphere embedded in a homogeneous medium.
The best way to understand between these two scattering phenomena, the given figure may suffice.
Unfortunately, this rigorous solution is not easily available in any textbook. The following literature are the best resources:
-- Mie, G., Ann.Physik, [4] 25, 377(1908).
-- van de Hulst, H.C., "Light Scattering by Small Particles," Chapters 9 and 10, Wiley, New York, 1957.
-- Kerker, M., "The Scattering of Light and Other Electromagnetic Radiation," Chapters 3 and 4, Academic Press, New York, 1969.
-- Bohren, C.F. and Huffman, D.R., "Absorption and Scattering of Light by Small Particles", Wiley, New York, 1983.
Friday, February 10, 2006
My on-going attempt
Here I'll be posting all my attempts to solve Mie Scattering in the context of X-rays. What would look like thought-diary of walking on ladder to understand it, would be interesting journey to know it in full contents.
Subscribe to:
Posts (Atom)