コード例 #1
0
        /// <summary>
        /// Returns the scattering coefficient for a given wavelength
        /// </summary>
        /// <param name="wavelength">Wavelength</param>
        /// <returns>The scattering coefficient Mus</returns>
        public double GetMus(double wavelength)
        {
            MieScattParams = new MieScatteringParameters();
            BohrenHuffmanMie(wavelength);
            double qSca = MieScattParams.Q[0];

            //Let a = particle radius;
            //fv = particle volume fraction;
            //rho_s = fv/((4/3)*Pi/a^3) = particle number density;
            //sigma_s = Qsca*A = cross-section
            //A = Pi*a^2 = area
            // Then mus = rho_s*sigma_s, which, upon simplifying, produces:
            // mus = (fv*Qsca)/((4/3)*a)
            double mus = VolumeFraction * qSca / ((4.0 / 3.0) * ParticleRadius * 1e-3);  //radius in m

            return(mus);
        }
コード例 #2
0
 /// <summary>
 /// Returns the anisotropy coefficient for a given wavelength
 /// </summary>
 /// <param name="wavelength">Wavelength</param>
 /// <returns>The anisotropy coeffient g</returns>
 public double GetG(double wavelength)
 {
     MieScattParams = new MieScatteringParameters();
     BohrenHuffmanMie(wavelength);
     return(MieScattParams.G);
 }