放射性元素原子的寿命是 1/k

放射性元素原子的平均寿命

数值计算代码:

            double percent = 1.0 / 10000.0; //衰变掉现有的万分之1;
            double original = 1.0;    //总数,按百分比来计算
            double remain = original;   //剩余数目

            //少掉万分之1的时间是 period=ln(9999/10000)/-k 计算时k不加入,
            //少掉万分之一所以剩余  9999/10000 * y0=y0 * exp(-k*t);
            double period = -Math.Log(1 - percent); 
            int step = 1;//经历的衰变周期数(指衰变掉现有的万分之1)

            double avgLifetime = 0.0d;
            double hasDealSum = 0.0d; //已经累加进来的百分比数,这个应该等于1
            while ((original-hasDealSum)>=0.0000001) //
            {
                var decay= (remain * percent); //本次衰变掉的数量
                var lifetime = step * period * decay; // 本次衰变掉的原子寿命*权重
                hasDealSum += decay;
                remain = remain * (1 - percent);
                avgLifetime = avgLifetime + lifetime;
                step++;
               // Console.WriteLine(cur);
            }

            Console.WriteLine(String.Format("original={0},has deal sum={1}", original, hasDealSum));
            Console.WriteLine("average lifetime:" + avgLifetime + " / k"); //
View Code

相关文章:

  • 2021-06-12
  • 2022-12-23
  • 2021-10-09
  • 2022-01-03
  • 2021-06-17
  • 2021-08-25
  • 2021-11-15
猜你喜欢
  • 2021-10-31
  • 2022-12-23
  • 2021-10-02
  • 2022-12-23
  • 2021-05-10
  • 2022-12-23
  • 2021-05-10
相关资源
相似解决方案