ABS(98.5*LT(ROUND(SAME…AVE(%LabelClaim), -1), 98.5)+ 101.5* GT(ROUND(SAME…AVE(%LabelClaim),
-1), 101.5)+ SAME…AVE(%LabelClaim)*GTE(ROUND(SAME…AVE(%LabelClaim), -1), 98.5)*LTE(ROUND(SAME…AVE(%LabelClaim),
-1), 101.5)- SAME…AVE(%LabelClaim))+(2.4* %RSD(SAME…AVE(%LabelClaim))*SAME…AVE(%LabelClaim)/100)
I don't see a standard deviation summary function in Empower, so I've gotten around that with taking the %RSD and back-calculating the standard deviation.
where in this case n=10
If further evaluation required where n=30 CF does get complicated
If amount quantified in empower then CF required will be mean , stdev and CU for n=10, then create a CF for AV= CU_10+2.4*Std_Dev
with labels for sample are the same
mean = SAME.1..AVE(amount)
Std_dev = %rsd*mean (as above)
Above formula will work but breaking this down makes testing some what simpler
check out Informs 2017 app . this also gives information on CF for 10 and 30 tablets
This is relatively easy to accomplish.
Break it down so you have a CF for every value you need to calculate.
Acceptance Value then becomes: ABS(M-Average_LC)+(K_Value*STDEV_LC)
Your n=10 or n=30 can then become: ENUM((EQ(Stage,1)<(Acceptance_Value,15.0)), (EQ(Stage,2)<(Acceptance_Value,15.0)&RANGE(Average_LC,0.75*M,1.25*M)), (EQ(Stage,1)>(Acceptance_Value,15.0)), (EQ(Stage,2)>(Acceptance_Value,15.0)), (EQ(Stage,2)<(Average_LC,0.75*M)|EQ(Stage,2)>(Average_LC,1.25*M)))
The translations on the ENUM field above are a simple pass / pass / fail. test 20 more / fail / fail.
Works like a treat
I've always taken the approach not to validate the logic, but verify the individual parameters and the end result.
When I developed the code I was able to find a stage 1 pass, stage 1 fail, stage 2 pass, and stage 2 fail. Historical data was able to help me find results that were borderline for stage 1 and 2 to use in testing.
The code I posted was written quite a while ago. There may be more elegant ways to tackle this now. However, if its not broken, then don't fix it!
indeed no need to refine this if CF works as is
on that note if n=10 fails (one sample set) then a further n=20 is tested (second sample set) I guess the only option is to 'process only sample set ' to evaluate AV for n=30 for L2 = 25.0 ?
Yes, that is correct. If you generate a failure at n=10 and need to test more, then the only option to generate the correct n=30 data is to combine the two sample sets into a process only sample set.
Yes, as I believe you can gather I used very little nested functions in my approach. I seen examples online in various forums where people have tried to do this using a single custom field. That is a recipe for disaster in my opinion.
However, it would have been good to have a short cut / cheat / example to follow when I originally did this. I believe I first developed this approach back in 2013-2014, which was around the same time that I tackled dissolution calculations without the dissolution option (that was a fun exercise!).
so for validation check AV value to say 14DP ?
then logic been Pass L1, Test 20 units ,Pass L2,Fail L2, failed
CU can be reduced to 6 CF and not 21 as shown in document
The main frustration here is that you have to process results to retrieve CF results
agreed , but to show comparison to excel Empower sample set (once dilution manipulated to achaive required mean result) needs to be processed
So to test all five logics (or 6 if n=10 or n=30 fo rsome reason) then 6 results sets are required (sample set as a cf test run)
Here is another way to do it that again seems really long and complex but its all there if you have the time to create and test the custom fields:
As discussed earlier the number of CF can be reduced to 8 with 1 user input
I will provide the answer to this so that you can easily perform the calculation using Empower and I have validated it as well.1. The AV value has a challenge here: M=X̅ if 98.5%≤ X̅≥101.5% Even if you enumerate a custom field that part of it is a no go but think about in that the value of |M-X̅| will always collapse to zero!I set up the following custom fields(CF1) AV = Mv * |M- X̅|+ ks(CF2 is Enum) M = 0 if 98.5%≤ X̅≥101.5% M= 98.5% if X̅<98.5% M= 101.5% if X̅>101.5% (CF3 is ENUM) Mv = 0 if 98.5%≤ X̅≥101.5% Mv = 1 if X̅<98.5% Mv = 1 if X̅>101.5% (CF4) s = (RSD * X̅)/100(CF5) k = 2.4 if Count of data points = 10 k = 2.0 if Count of data points = 30Now because Std Dev is not a function available for a custom field in Empower we use CF4Also notice that (1 * |M-X̅|) = |M-X̅| ! Anythinh below 98.5 or above 101.5 is calculated correctly.and(0 * |0-X̅|) = 0*|-X̅| = 0*X̅ = 0! This is what |M-X̅| would be for any mean value.The challenge has always been for getting Empower to understand the reasoning behind the criteria and since M=X̅ if 98.5%≤ X̅≥101.5% is not possible you collapse that value to zero with a multiplier of 0 while using 1 as a multiplier for the other two conditions.If you need help with the creating these functions in Empower please reach out to me.Arthur SergiHow did u create CF5 for k value please?