public override Tuple <string, ExposureMetricFunc>[] DefineContent(Dictionary <string, object> customVals) { MeasureList ml = new MeasureList(measures: new[] { 81, 79.5, 80.7, 78.1, 80.1, 74.8, 74.8, 79.8, 79.8 }, oel: 85); UninformativeModelParameters modelParams = UninformativeModelParameters.GetDefaults(logNormalDstrn: false); this.OverwriteDefaults(modelParams, customVals); McmcParameters mcmcParams = new McmcParameters(); this.OverwriteDefaults(mcmcParams, customVals); ExposureMetricEstimates eme = new ExposureMetricEstimates( new SEGUninformativeModel(measures: ml, specificParams: modelParams, mcmcParams: mcmcParams)); this.Emes = new ExposureMetricEstimates[] { eme }; return(new Tuple <string, ExposureMetricFunc>[] { Tuple.Create("Arithmetic mean", new ExposureMetricFunc(e => e.ArithMean())), Tuple.Create("Arithmetic standard deviation", new ExposureMetricFunc(e => e.ArithStanDev())), Tuple.Create("Exceedance Fraction (%)", new ExposureMetricFunc(e => e.ExceedanceFrac())), Tuple.Create("95th percentile", new ExposureMetricFunc(e => e.P95())) }); }
public override Tuple <string, ExposureMetricFunc>[] DefineContent(Dictionary <string, object> customVals) { Dictionary <string, double[]> lowWWCorrMeas = new Dictionary <string, double[]> { { "worker-01", new double[] { 185, 34.8, 16.7, 12.4, 18.6, 47.4, 52.6, 15.3, 27.6, 26.3 } }, { "worker-02", new double[] { 4.79, 23, 7.54, 62.3, 8.55, 9.28, 43.6, 94.2, 44.6, 66.6 } }, { "worker-03", new double[] { 8.85, 31.7, 15.8, 89.6, 164, 40.5, 47.6, 75.5, 10.7, 62.3 } }, { "worker-04", new double[] { 16.4, 6.91, 87.4, 20, 16.8, 7.12, 6.99, 16.4, 12.6, 63.9 } }, { "worker-05", new double[] { 14.7, 59.6, 15, 21.8, 20.6, 96.1, 16.8, 15.8, 8.02, 26.7 } }, { "worker-06", new double[] { 37.9, 96.9, 40.8, 106, 21.7, 25.8, 51.3, 23, 18.9, 20.2 } }, { "worker-07", new double[] { 22, 44.8, 37.5, 16.6, 30.7, 7.07, 7.18, 80.9, 44.5, 135 } }, { "worker-08", new double[] { 69.9, 30.5, 33.4, 53, 70.7, 78.3, 18, 45.2, 51.4, 33.7 } }, { "worker-09", new double[] { 28.1, 7.49, 16, 23, 99.9, 12, 11.8, 57.4, 8.79, 24 } }, { "worker-10", new double[] { 113, 7.68, 85.6, 196, 35, 17.6, 60.7, 15.5, 34.3, 12.1 } }, }; Dictionary <string, double[]> highWWCorrMeas = new Dictionary <string, double[]> { { "worker-01", new double[] { 66.8, 46, 61.1, 54.6, 31.7, 74.3, 60.9, 53.4, 38.9, 27.5 } }, { "worker-02", new double[] { 14.2, 53.9, 21.8, 47.8, 48.8, 76.5, 41.3, 20.4, 31.9, 31.1 } }, { "worker-03", new double[] { 186, 84.6, 94.4, 218, 189, 130, 107, 80.6, 288, 173 } }, { "worker-04", new double[] { 23.5, 16.2, 40.2, 130, 42.2, 25.7, 35.4, 40.8, 109, 40.9 } }, { "worker-05", new double[] { 43.8, 31.1, 13.1, 24.1, 27.7, 23.9, 40.2, 60.3, 29.8, 37.2 } }, { "worker-06", new double[] { 41, 11.4, 4.44, 12.9, 22.7, 20.5, 12.6, 8.35, 13.6, 28.1 } }, { "worker-07", new double[] { 6.56, 9.5, 6.97, 5.92, 2.42, 14, 12.3, 3.07, 7.01, 6.49 } }, { "worker-08", new double[] { 9.21, 9.42, 28.7, 72.9, 35.6, 17.2, 20.2, 13.4, 10.5, 26.3 } }, { "worker-09", new double[] { 19.6, 14.3, 22.8, 35.1, 28.9, 36.9, 13, 13.3, 13.6, 37 } }, { "worker-10", new double[] { 78.7, 28.2, 41.3, 14.4, 72.9, 10.2, 16.2, 15.8, 42.2, 61 } }, }; BWModelParameters bwParams = BWModelParameters.GetDefaults(true); ExposureMetricEstimates emeLowWWCorr = new ExposureMetricEstimates( new BetweenWorkerModel(measures: new MeasureList(workerMeasures: lowWWCorrMeas, oel: 150), specificParams: bwParams)); ExposureMetricEstimates emeHighWWCorr = new ExposureMetricEstimates( new BetweenWorkerModel(measures: new MeasureList(workerMeasures: highWWCorrMeas, oel: 150), specificParams: bwParams)); double lowWWCorrLowestGm, lowWWCorrHighestGm, highWWCorrLowestGm, highWWCorrHighestGm; string widLowWWCorrLeastExpo = emeLowWWCorr.FindExposedWorker(findMostExposed: false, gm: out lowWWCorrLowestGm); string widLowWWCorrMostExpo = emeLowWWCorr.FindExposedWorker(findMostExposed: true, gm: out lowWWCorrHighestGm); ExposureMetricEstimates emeLowLeast = emeLowWWCorr.GetWorkerEstimates(widLowWWCorrLeastExpo); ExposureMetricEstimates emeLowMost = emeLowWWCorr.GetWorkerEstimates(widLowWWCorrMostExpo); string widHighWWCorrLeastExpo = emeHighWWCorr.FindExposedWorker(findMostExposed: false, gm: out highWWCorrLowestGm); string widHighWWCorrMostExpo = emeHighWWCorr.FindExposedWorker(findMostExposed: true, gm: out highWWCorrHighestGm); ExposureMetricEstimates emeHighLeast = emeHighWWCorr.GetWorkerEstimates(widHighWWCorrLeastExpo); ExposureMetricEstimates emeHighMost = emeHighWWCorr.GetWorkerEstimates(widHighWWCorrMostExpo); this.Emes = new ExposureMetricEstimates[] { emeLowLeast, emeLowMost, emeHighLeast, emeHighMost }; return(new Tuple <string, ExposureMetricFunc>[] { Tuple.Create("GM", new ExposureMetricFunc(e => e.GeomMean())), Tuple.Create("GSD", new ExposureMetricFunc(e => e.GeomStanDev())), Tuple.Create("Exceedance fraction (%)", new ExposureMetricFunc(e => e.ExceedanceFrac())), Tuple.Create("95th percentile", new ExposureMetricFunc(e => e.P95())), Tuple.Create("Arithmetic mean", new ExposureMetricFunc(e => e.ArithMean())) }); }
public override Tuple <string, ExposureMetricFunc>[] DefineContent(Dictionary <string, object> customVals) { double[] measures = new double[] { 96.6, 38.3, 80.8, 15.1, 34, 73.4, 14.5, 64.8, 27.4, 48.7, 43.3, 43.4, 57.8, 94.9, 44.1, 44.3, 62.9, 117, 51.6, 64.7, 50.1, 74.7, 221, 46.8, 84.3, 93.4, 126, 46.9, 29.5, 73.8, 66.9, 61.3, 30.2, 101, 22.6, 191, 29.3, 68, 114, 33.7, 52.5, 118, 49.7, 60.4, 36.6, 55.9, 31.9, 84.3, 75.8, 39.5, 28.3, 56.5, 44.2, 48, 36.6, 70, 37, 72, 48, 66.1, 72.4, 80.9, 69.1, 162, 67.3, 75.2, 40.5, 25.6, 44, 120, 56.3, 42.9, 6.63, 24.9, 40.9, 81, 97.2, 74.7, 79.6, 48.8, 75.3, 54.8, 66.5, 71.3, 28.7, 87.5, 51.9, 19.6, 60.8, 45.9, 46.9, 84.8, 120, 103, 36.7, 92.7, 32.8, 73.8, 214, 65.3 }; double oel = 100; SEGInformedVarModelParameters modelParams = SEGInformedVarModelParameters.GetDefaults(logNormalDstrn: true); ExposureMetricEstimates emeNoErr = new ExposureMetricEstimates( new SEGInformedVarModel( measures: new MeasureList(measures: measures, oel: oel), specificParams: modelParams )); ExposureMetricEstimates emeKnownErr = new ExposureMetricEstimates( new SEGInformedVarModel( measures: new MeasureList(measures: measures, oel: oel, measErr: 30), specificParams: modelParams )); ExposureMetricEstimates emeUnknownErr = new ExposureMetricEstimates( new SEGInformedVarModel( measures: new MeasureList(measures: measures, oel: oel, measErrRange: new double[] { 15, 45 }), specificParams: modelParams )); this.Emes = new ExposureMetricEstimates[] { emeNoErr, emeKnownErr, emeUnknownErr }; return(new Tuple <string, ExposureMetricFunc>[] { Tuple.Create("GM (90% CrI)", new ExposureMetricFunc(e => e.GeomMean())), Tuple.Create("GSD (90% CrI)", new ExposureMetricFunc(e => e.GeomStanDev())), Tuple.Create("Exceedance fraction (%)(90 % CrI)", new ExposureMetricFunc(e => e.ExceedanceFrac())), Tuple.Create("95th percentile (90% CrI)", new ExposureMetricFunc(e => e.P95())), Tuple.Create("Arithmetic mean (90% CrI)", new ExposureMetricFunc(e => e.ArithMean())), }); }
public override Tuple <string, ExposureMetricFunc>[] DefineContent(Dictionary <string, object> customVals) { MeasureList ml = new MeasureList(measures: new[] { 24.7, 64.1, 13.8, 43.7, 19.9, 133, 32.1, 15, 53.7 }, oel: 100); SEGInformedVarModelParameters modelParams = SEGInformedVarModelParameters.GetDefaults(logNormalDstrn: true); this.OverwriteDefaults(modelParams, customVals); McmcParameters mcmcParams = new McmcParameters(); this.OverwriteDefaults(mcmcParams, customVals); ExposureMetricEstimates eme = new ExposureMetricEstimates( new SEGInformedVarModel(measures: ml, specificParams: modelParams, mcmcParams: mcmcParams)); this.Emes = new ExposureMetricEstimates[] { eme }; return(new Tuple <string, ExposureMetricFunc>[] { Tuple.Create("GM", new ExposureMetricFunc(e => e.GeomMean())), Tuple.Create("GSD", new ExposureMetricFunc(e => e.GeomStanDev())), Tuple.Create("Exceedance Fraction (%)", new ExposureMetricFunc(e => e.ExceedanceFrac(true))), Tuple.Create("95th percentile", new ExposureMetricFunc(e => e.P95(true))), Tuple.Create("AIHA band probabilities in % (95th percentile)", new ExposureMetricFunc(e => e.BandProbabilities())), Tuple.Create("Arithmetic mean", new ExposureMetricFunc(e => e.ArithMean(true))), Tuple.Create("AIHA band probabilities in % (AM)", new ExposureMetricFunc(e => e.BandProbabilities(false))) }); }
public ExposureMetricEstimates GetWorkerEstimates(string workerId) { ExposureMetricEstimates workerEst = (ExposureMetricEstimates)this.Clone(); workerEst.MuChain = BWModel.Result.GetChainByName(string.Format("mu_{0}Sample", workerId)); workerEst.WorkerEstimates = true; return(workerEst); }
public override Tuple <string, ExposureMetricFunc>[] DefineContent(Dictionary <string, object> customVals) { MeasureList ml = new MeasureList(measures: new[] { 24.7, 64.1, 13.8, 43.7, 19.9, 133, 32.1, 15, 53.7 }, oel: 100); SEGInformedVarModelParameters modelParams = SEGInformedVarModelParameters.GetDefaults(logNormalDstrn: true); this.OverwriteDefaults(modelParams, customVals); McmcParameters mcmcParams = new McmcParameters(); this.OverwriteDefaults(mcmcParams, customVals); ExposureMetricEstimates emeInformed = new ExposureMetricEstimates( new SEGInformedVarModel( measures: ml, specificParams: modelParams, mcmcParams: mcmcParams )); UninformativeModelParameters uninfModelParams = UninformativeModelParameters.GetDefaults(logNormalDstrn: true); this.OverwriteDefaults(modelParams, customVals); ExposureMetricEstimates emeUninformed = new ExposureMetricEstimates( new SEGUninformativeModel( measures: ml, specificParams: uninfModelParams, mcmcParams: mcmcParams )); ExposureMetricEstimates emePdInformed = new ExposureMetricEstimates( new SEGInformedVarModel( measures: ml, specificParams: modelParams, mcmcParams: mcmcParams, pastDataSummary: new PastDataSummary(mean: Math.Log(5), sd: Math.Log(2.4), n: 5) )); this.Emes = new ExposureMetricEstimates[] { emeInformed, emeUninformed, emePdInformed }; return(new Tuple <string, ExposureMetricFunc>[] { Tuple.Create("GM (90% CrI)", new ExposureMetricFunc(e => e.GeomMean())), Tuple.Create("GSD (90% CrI)", new ExposureMetricFunc(e => e.GeomStanDev())), Tuple.Create("Exceedance fraction (%)(90 % CrI)", new ExposureMetricFunc(e => e.ExceedanceFrac())), Tuple.Create("95th percentile (90% CrI)", new ExposureMetricFunc(e => e.P95())), Tuple.Create("Overexposure risk (%, P95)", new ExposureMetricFunc(e => e.OverExposureRisk())), Tuple.Create("AM (90% CrI)", new ExposureMetricFunc(e => e.ArithMean())), Tuple.Create("Overexposure risk (%, AM)", new ExposureMetricFunc(e => e.OverExposureRisk(false))), }); }
public override Tuple <string, ExposureMetricFunc>[] DefineContent(Dictionary <string, object> customVals) { Dictionary <string, double[]> realisticMeasures = new Dictionary <string, double[]> { { "worker-1", new double[] { 76.2, 82.3, 81.7, 73.7, 79.4, 79.1, 80.2, 71, 86.9, 75.6 } }, { "worker-2", new double[] { 70.6, 78.7, 77.6, 76.9, 79.5, 84.8, 77.6, 65.5, 74.1, 69.9 } }, { "worker-3", new double[] { 79.2, 77.7, 73.5, 78.9, 81.6, 83.1, 85.1, 84.2, 79.8, 84.1 } }, { "worker-4", new double[] { 79.1, 77.6, 81.2, 82.6, 81.6, 82.4, 76.9, 87.6, 80.4, 79.7 } }, { "worker-5", new double[] { 85.3, 92.2, 75.8, 84.1, 76.1, 84.6, 78.9, 75.8, 89, 87.1 } }, { "worker-6", new double[] { 77.8, 89, 81.9, 80.4, 88.5, 87, 85, 88.1, 81.3, 90.6 } }, { "worker-7", new double[] { 79.1, 80.7, 85.8, 84.8, 88.5, 82.6, 78.6, 90.1, 82.9, 83 } }, { "worker-8", new double[] { 80, 76.6, 84.6, 77.1, 81.5, 77.4, 73.5, 82.2, 74.4, 77.6 } }, { "worker-9", new double[] { 80, 81.2, 73.8, 80.7, 76.9, 77.5, 74.6, 70.6, 82.3, 66.4 } }, { "worker-10", new double[] { 89.1, 85.4, 81.8, 88.1, 86.4, 81.6, 86.8, 81.4, 86.7, 83.6 } } }; BWModelParameters modelParams = BWModelParameters.GetDefaults(logNormalDstrn: false); //this.OverwriteDefaults(modelParams, customVals); McmcParameters mcmcParams = new McmcParameters(); //this.OverwriteDefaults(mcmcParams, customVals); ExposureMetricEstimates eme = new ExposureMetricEstimates( new BetweenWorkerModel(measures: new MeasureList(workerMeasures: realisticMeasures, oel: 85), specificParams: modelParams, mcmcParams: mcmcParams)); this.Emes = new ExposureMetricEstimates[] { eme }; return(new Tuple <string, ExposureMetricFunc>[] { Tuple.Create("Arithmetic mean (90% CrI)", new ExposureMetricFunc(e => e.ArithMean())), Tuple.Create("Between-worker arithmetic standard deviation (90% CrI)", new ExposureMetricFunc(e => e.ArithStanDev())), Tuple.Create("Within-worker arithmetic standard deviation (90% CrI)", new ExposureMetricFunc(e => e.ArithStanDev(false))), Tuple.Create("Within-worker correlation (rho) (90% CrI)", new ExposureMetricFunc(e => e.Rho())), Tuple.Create("Probability that rho>0.2", new ExposureMetricFunc(e => e.RhoProbGt(0.2))), Tuple.Create("R.difference (90% CrI)", new ExposureMetricFunc(e => e.RDiff())), Tuple.Create("Probability of individual overexposure (95th percentile) in % (90% CrI)", new ExposureMetricFunc(e => e.IndivOverexpoP95())), Tuple.Create("Chances that the above probability is >20%", new ExposureMetricFunc(e => e.IndivOverexpoP95ProbGt(20))), Tuple.Create("Probability of individual overexposure (arithmetic mean) in % (90% CrI)", new ExposureMetricFunc(e => e.IndivOverexpoAm())), Tuple.Create("Chances that the above probability is >20%", new ExposureMetricFunc(e => e.IndivOverexpoAmProbGt(20))), }); }
public override Tuple <string, ExposureMetricFunc>[] DefineContent(Dictionary <string, object> customVals) { Dictionary <string, double[]> realisticMeasures = new Dictionary <string, double[]> { { "worker-01", new double[] { 31, 60.1, 133, 27.1 } }, { "worker-02", new double[] { 61.1, 5.27, 30.4, 31.7 } }, { "worker-03", new double[] { 20.5, 16.5, 15.5, 71.5 } } }; BWModelParameters modelParams = BWModelParameters.GetDefaults(logNormalDstrn: true); this.OverwriteDefaults(modelParams, customVals); McmcParameters mcmcParams = new McmcParameters(); this.OverwriteDefaults(mcmcParams, customVals); ExposureMetricEstimates eme = new ExposureMetricEstimates( new BetweenWorkerModel(measures: new MeasureList(workerMeasures: realisticMeasures, oel: 150), specificParams: modelParams, mcmcParams: mcmcParams)); this.Emes = new ExposureMetricEstimates[] { eme }; return(new Tuple <string, ExposureMetricFunc>[] { Tuple.Create("Group GM (90% CrI)", new ExposureMetricFunc(e => e.GeomMean())), Tuple.Create("Between-worker GSD (90% CrI)", new ExposureMetricFunc(e => e.GeomStanDev())), Tuple.Create("Within-worker GSD (90% CrI)", new ExposureMetricFunc(e => e.GeomStanDev(false))), Tuple.Create("Within-worker correlation (rho) (90% CrI)", new ExposureMetricFunc(e => e.Rho())), Tuple.Create("Probability that rho>0.2", new ExposureMetricFunc(e => e.RhoProbGt(0.2))), Tuple.Create("R.ratio (+90% CrI)", new ExposureMetricFunc(e => e.RRatio())), Tuple.Create("Probability that R>2", new ExposureMetricFunc(e => e.RRatioProbGt(2))), Tuple.Create("Probability that R>10", new ExposureMetricFunc(e => e.RRatioProbGt(10))), Tuple.Create("Probability of individual overexposure (95th percentile) in % (90% CrI)", new ExposureMetricFunc(e => e.IndivOverexpoP95())), Tuple.Create("Chances that the above probability is >20%", new ExposureMetricFunc(e => e.IndivOverexpoP95ProbGt(20))), Tuple.Create("Probability of individual overexposure (arithmetic mean) in % (90% CrI)", new ExposureMetricFunc(e => e.IndivOverexpoAm())), Tuple.Create("Chances that the above probability is >20%", new ExposureMetricFunc(e => e.IndivOverexpoAmProbGt(20))), }); }
public Object Clone() { ExposureMetricEstimates clone = new ExposureMetricEstimates(Oel); clone.LogNormDist = LogNormDist; clone.TargetPerc = TargetPerc; clone.MuChain = new double[MuChain.Length]; MuChain.CopyTo(clone.MuChain, 0); clone.SigmaChain = new double[SigmaChain.Length]; SigmaChain.CopyTo(clone.SigmaChain, 0); if (SigmaWithinChain != null) { clone.SigmaWithinChain = new double[SigmaWithinChain.Length]; SigmaWithinChain.CopyTo(clone.SigmaWithinChain, 0); } clone.BWModel = BWModel; if (WorkerIds != null) { clone.WorkerIds = new string[WorkerIds.Length]; WorkerIds.CopyTo(clone.WorkerIds, 0); } return(clone); }
public AihaBandProbabilities(double[] chain, double oel) { this.chain = chain; oe = new ExposureMetricEstimates(oel); }
public override Tuple <string, ExposureMetricFunc>[] DefineContent(Dictionary <string, object> customVals) { Dictionary <string, double[]> lowWWCorrMeas = new Dictionary <string, double[]> { { "worker-01", new double[] { 185, 34.8, 16.7, 12.4, 18.6, 47.4, 52.6, 15.3, 27.6, 26.3 } }, { "worker-02", new double[] { 4.79, 23, 7.54, 62.3, 8.55, 9.28, 43.6, 94.2, 44.6, 66.6 } }, { "worker-03", new double[] { 8.85, 31.7, 15.8, 89.6, 164, 40.5, 47.6, 75.5, 10.7, 62.3 } }, { "worker-04", new double[] { 16.4, 6.91, 87.4, 20, 16.8, 7.12, 6.99, 16.4, 12.6, 63.9 } }, { "worker-05", new double[] { 14.7, 59.6, 15, 21.8, 20.6, 96.1, 16.8, 15.8, 8.02, 26.7 } }, { "worker-06", new double[] { 37.9, 96.9, 40.8, 106, 21.7, 25.8, 51.3, 23, 18.9, 20.2 } }, { "worker-07", new double[] { 22, 44.8, 37.5, 16.6, 30.7, 7.07, 7.18, 80.9, 44.5, 135 } }, { "worker-08", new double[] { 69.9, 30.5, 33.4, 53, 70.7, 78.3, 18, 45.2, 51.4, 33.7 } }, { "worker-09", new double[] { 28.1, 7.49, 16, 23, 99.9, 12, 11.8, 57.4, 8.79, 24 } }, { "worker-10", new double[] { 113, 7.68, 85.6, 196, 35, 17.6, 60.7, 15.5, 34.3, 12.1 } }, }; Dictionary <string, double[]> highWWCorrMeas = new Dictionary <string, double[]> { { "worker-01", new double[] { 66.8, 46, 61.1, 54.6, 31.7, 74.3, 60.9, 53.4, 38.9, 27.5 } }, { "worker-02", new double[] { 14.2, 53.9, 21.8, 47.8, 48.8, 76.5, 41.3, 20.4, 31.9, 31.1 } }, { "worker-03", new double[] { 186, 84.6, 94.4, 218, 189, 130, 107, 80.6, 288, 173 } }, { "worker-04", new double[] { 23.5, 16.2, 40.2, 130, 42.2, 25.7, 35.4, 40.8, 109, 40.9 } }, { "worker-05", new double[] { 43.8, 31.1, 13.1, 24.1, 27.7, 23.9, 40.2, 60.3, 29.8, 37.2 } }, { "worker-06", new double[] { 41, 11.4, 4.44, 12.9, 22.7, 20.5, 12.6, 8.35, 13.6, 28.1 } }, { "worker-07", new double[] { 6.56, 9.5, 6.97, 5.92, 2.42, 14, 12.3, 3.07, 7.01, 6.49 } }, { "worker-08", new double[] { 9.21, 9.42, 28.7, 72.9, 35.6, 17.2, 20.2, 13.4, 10.5, 26.3 } }, { "worker-09", new double[] { 19.6, 14.3, 22.8, 35.1, 28.9, 36.9, 13, 13.3, 13.6, 37 } }, { "worker-10", new double[] { 78.7, 28.2, 41.3, 14.4, 72.9, 10.2, 16.2, 15.8, 42.2, 61 } }, }; BWModelParameters modelParams = BWModelParameters.GetDefaults(logNormalDstrn: true); this.OverwriteDefaults(modelParams, customVals); McmcParameters mcmcParams = new McmcParameters(); this.OverwriteDefaults(mcmcParams, customVals); BWModelParameters bwParams = BWModelParameters.GetDefaults(true); ExposureMetricEstimates emeLowWWCorr = new ExposureMetricEstimates( new BetweenWorkerModel(measures: new MeasureList(workerMeasures: lowWWCorrMeas, oel: 150), specificParams: modelParams, mcmcParams: mcmcParams)); ExposureMetricEstimates emeHighWWCorr = new ExposureMetricEstimates( new BetweenWorkerModel(measures: new MeasureList(workerMeasures: highWWCorrMeas, oel: 150), specificParams: modelParams, mcmcParams: mcmcParams)); this.Emes = new ExposureMetricEstimates[] { emeLowWWCorr, emeHighWWCorr }; return(new Tuple <string, ExposureMetricFunc>[] { Tuple.Create("Group GM (90% CrI)", new ExposureMetricFunc(e => e.GeomMean())), Tuple.Create("Between-worker GSD (90% CrI)", new ExposureMetricFunc(e => e.GeomStanDev())), Tuple.Create("Within-worker GSD (90% CrI)", new ExposureMetricFunc(e => e.GeomStanDev(false))), Tuple.Create("Within-worker correlation (rho) (90% CrI)", new ExposureMetricFunc(e => e.Rho())), Tuple.Create("Probability that rho>0.2", new ExposureMetricFunc(e => e.RhoProbGt(0.2))), Tuple.Create("R.ratio (+90% CrI)", new ExposureMetricFunc(e => e.RRatio())), Tuple.Create("Probability that R>2", new ExposureMetricFunc(e => e.RRatioProbGt(2))), Tuple.Create("Probability that R>10", new ExposureMetricFunc(e => e.RRatioProbGt(10))), Tuple.Create("Probability of individual overexposure (95th percentile) in % (90% CrI)", new ExposureMetricFunc(e => e.IndivOverexpoP95())), Tuple.Create("Chances that the above probability is >20%", new ExposureMetricFunc(e => e.IndivOverexpoP95ProbGt(20))), Tuple.Create("Probability of individual overexposure (arithmetic mean) in % (90% CrI)", new ExposureMetricFunc(e => e.IndivOverexpoAm())), Tuple.Create("Chances that the above probability is >20%", new ExposureMetricFunc(e => e.IndivOverexpoAmProbGt(20))), }); }