public override Complex TemporalFrequencyFluence(DiffusionParameters dp, double rho,
                                                  double z, Complex k)
 {
     return(DiffusionGreensFunctions.TemporalFrequencyPointSourceImageGreensFunction(dp,
                                                                                     CalculatorToolbox.GetRadius(rho, z - dp.zp),
                                                                                     CalculatorToolbox.GetRadius(rho, z + dp.zp + 2 * dp.zb),
                                                                                     k));
 }
 /// <summary>
 /// Evaluate the temporally-radially resolved fluence using the point source-image configuration
 /// </summary>
 /// <param name="dp">DiffusionParameters object</param>
 /// <param name="rho">radial location</param>
 /// <param name="z">depth location</param>
 /// <param name="t">time</param>
 /// <returns>fluence</returns>
 public override double TemporalFluence(
     DiffusionParameters dp, double rho, double z, double t)
 {
     return(DiffusionGreensFunctions.TemporalPointSourceImageGreensFunction(dp,
                                                                            CalculatorToolbox.GetRadius(rho, z - dp.zp),
                                                                            CalculatorToolbox.GetRadius(rho, z + dp.zp + 2 * dp.zb),
                                                                            t));
 }
        /// <summary>
        /// Evaluate the stationary radially resolved z-flux with the point source-image
        /// configuration
        /// </summary>
        /// <param name="rho">radial location</param>
        /// <param name="z">depth location</param>
        /// <param name="dp">DiffusionParamters object</param>
        /// <returns></returns>
        public double StationaryFlux(double rho, double z, DiffusionParameters dp)
        {
            var zSource = z - dp.zp;
            var zImage  = z + dp.zp + 2 * dp.zb;

            return
                (DiffusionGreensFunctions.StationaryPointSourceImageGreensFunctionZFlux(dp,
                                                                                        CalculatorToolbox.GetRadius(rho, zSource), zSource,
                                                                                        CalculatorToolbox.GetRadius(rho, zImage), zImage));
        }
        public Complex TemporalFrequencyZFlux(
            DiffusionParameters dp, double rho, double z, Complex k)
        {
            var zSource = z - dp.zp;
            var zImage  = z + dp.zp + 2 * dp.zb;

            return(DiffusionGreensFunctions.TemporalFrequencyPointSourceImageGreensFunctionZFlux(dp,
                                                                                                 CalculatorToolbox.GetRadius(rho, zSource), zSource,
                                                                                                 CalculatorToolbox.GetRadius(rho, zImage), zImage,
                                                                                                 k));
        }
        /// <summary>
        /// Evaluate the temporally-radially resolved z-flux using the point source-image configuration
        /// </summary>
        /// <param name="dp">DiffusionParameters object</param>
        /// <param name="rho">radial location</param>
        /// <param name="z">depth location</param>
        /// <param name="t">time</param>
        /// <returns></returns>
        public double TemporalFlux(
            DiffusionParameters dp, double rho, double z, double t)
        {
            var zSource = z - dp.zp;
            var zImage  = z + dp.zp + 2 * dp.zb;

            return(DiffusionGreensFunctions.TemporalPointSourceImageGreensFunctionZFlux(dp,
                                                                                        CalculatorToolbox.GetRadius(rho, zSource), zSource,
                                                                                        CalculatorToolbox.GetRadius(rho, zImage), zImage,
                                                                                        t));
        }
 /// <summary>
 /// Evaluate the stationary radially resolved fluence with the point source-image
 /// configuration
 /// </summary>
 /// <param name="rho">radial location</param>
 /// <param name="z">depth location</param>
 /// <param name="dp">DiffusionParameters object</param>
 /// <returns>fluence</returns>
 public override double StationaryFluence(double rho, double z, DiffusionParameters dp)
 {
     return(DiffusionGreensFunctions.StationaryPointSourceImageGreensFunction(dp,
                                                                              CalculatorToolbox.GetRadius(rho, z - dp.zp),
                                                                              CalculatorToolbox.GetRadius(rho, z + dp.zp + 2 * dp.zb)));
 }
Esempio n. 7
0
 public static double TemporalPointSourceImageGreensFunction(
     DiffusionParameters dp, double rSource, double rImage, double t)
 {
     return(DiffusionGreensFunctions.TemporalPointSourceGreensFunction(dp, rSource, t) -
            DiffusionGreensFunctions.TemporalPointSourceGreensFunction(dp, rImage, t));
 }
Esempio n. 8
0
 // Green's function composition
 public static double StationaryPointSourceImageGreensFunction(
     DiffusionParameters dp, double rSource, double rImage)
 {
     return(DiffusionGreensFunctions.StationaryPointSourceGreensFunction(dp, rSource) -
            DiffusionGreensFunctions.StationaryPointSourceGreensFunction(dp, rImage));
 }
Esempio n. 9
0
 public static Complex TemporalFrequencyPointSourceImageGreensFunctionZFlux(
     DiffusionParameters dp, double rSource, double zSource, double rImage, double zImage, Complex k)
 {
     return(DiffusionGreensFunctions.TemporalFrequencyPointSourceGreensFunctionZFlux(dp, rSource, zSource, k) -
            DiffusionGreensFunctions.TemporalFrequencyPointSourceGreensFunctionZFlux(dp, rImage, zImage, k));
 }