我在网上发现了一个excel文件,它可以帮助计算药物半衰期,并有助于确定基于单个系统可能保留多少给定药物
Hal-life Hour Number
The quantity of the Drug taken per dose
how much is in your system from previous doses
以下是Excel文件的屏幕截图,其中显示了已执行计算的输出,并显示了每天所涉及的实际数学...
好的,所以我不熟悉数学,除了基本的加法,减法,乘法和除法之外我不太了解。
我的目标是创建一个类似于这个Excel文件的工具,但是使用PHP,我不知道该怎么做,但我认为所有答案都在上面的图像中,就数学部分而言。
看D3
我可以看到它需要......
D2
的值,即图片30
C3
的值1/2
^
做了什么?24 hours
除以D6
,其中包含小时数在我的PHP中,我希望有一个可以传递数据数组的函数,所以让我说我传入一个数组...
30
,0
,30
,0
,{{的数组1}},0
,0
这个函数会返回一个包含每天数据的数组,应该在每个系统中显示每天的剩余mg,然后我可以使用这个数据结果来构建图表,图形或简单的List
我很感激任何帮助让我开始,我想我可以自己解决这个问题,但我需要帮助将数学部分提高100%,上面我打破了我看到的等式,请帮助我理解更好例如,我不确定0
在等式中的作用或如何在PHP中执行
我希望我的问题不是太模糊,一旦我有了一个良好的开端,我会更具体地回来但如果你能到目前为止请帮助,谢谢你的阅读。
答案 0 :(得分:1)
function calcHalfLife( $mgTaken , $drugHalfLifeHours , $day ) {
//total number of half-lifes elapsed
$total_half_lifes = ($day * 24) / $drugHalfLifeHours;
//total reduction in dosage
$reductionFactor = pow( 0.5 , $total_half_lifes );
//return the current dosage in the person's system
return round( $mgTaken * $reductionFactor , 2 );
}
以上功能应该可以解决问题。通过服用的MG剂量,该药物半衰期的小时数,以及服用该剂量后的天数。
该功能通过计算一天中24小时的天数并将其除以该药物的半衰期所花费的总小时数来计算药物经历的半衰期数。这是药物剂量减少一半的次数。
然后需要0.5(50%作为小数)并将其增加到药物经历的半衰期总数的幂。所以1半生命将是0.5,2将是0.5 * 0.5 = 0.25等等。这是人体系统中剩余药物百分比的十进制表示。
然后将剩余部分乘以原始数量并将其四舍五入到小数点后两位。返回浮点值将表示人体系统中药物的剩余MG剂量。
如果您正在寻找能够计算该药物每日剂量的功能/系统(即:该人每天服用相同剂量而不是一次),这是一个非常不同的配方和功能,但基本原则与我在这里为你写的基本原则相同。
祝你好运;)