# Exact references for qdm_calibrate(): Python_reference/ref_binary_qdm.py # (rational arithmetic; the smallest distance between a probability of an # outcome and a grid value is about 9e-5, and between a probability of # meeting a criterion and its target about 3e-3). The curves are the # probabilities that the criteria are met at gamma = 0.01, ..., 0.99. ref_cal <- list( D1 = list( gamma_go = 0.7, gamma_nogo = 0.41, prob_go = 0.04539569696408934, prob_nogo = 0.1820194948817842, curve_go = c(0.9095952581639182, 0.8351111911970428, 0.7555154491502801, 0.7326075499361495, 0.7235162610462224, 0.692488340917831, 0.6399247874548518, 0.5820187088857995, 0.5779353878310263, 0.5779353878310263, 0.5779353878310263, 0.5576463131234777, 0.51053955065456, 0.44881548888315265, 0.41763529273058597, 0.41763529273058597, 0.41763529273058597, 0.41652260019391374, 0.41652260019391374, 0.41652260019391374, 0.4074313113039867, 0.4074313113039867, 0.3767067387791402, 0.32414318531616115, 0.2662371067471088, 0.2662371067471088, 0.2662371067471088, 0.2662371067471088, 0.2662371067471088, 0.2662371067471088, 0.26609807242881733, 0.26609807242881733, 0.26609807242881733, 0.26609807242881733, 0.26362333239562147, 0.26362333239562147, 0.24992820696802612, 0.21645702449573354, 0.14854199690661835, 0.14854199690661835, 0.14854199690661835, 0.14854199690661835, 0.14854199690661835, 0.14854199690661835, 0.14854199690661835, 0.14854199690661835, 0.14854199690661835, 0.14854199690661835, 0.14854199690661835, 0.14854199690661835, 0.14854199690661835, 0.14854199690661835, 0.14823291564643162, 0.14451375200964325, 0.07148966780888895, 0.07148966780888895, 0.07148966780888895, 0.07148966780888895, 0.07148966780888895, 0.07148966780888895, 0.07148966780888895, 0.07148966780888895, 0.07148966780888895, 0.07148966780888895, 0.07148966780888895, 0.07148966780888895, 0.07148966780888895, 0.07148966780888895, 0.07148966780888895, 0.04539569696408934, 0.03368078309878694, 0.029696746610759207, 0.029232732854534975, 0.029232732854534975, 0.029232732854534975, 0.029232732854534975, 0.029232732854534975, 0.029232732854534975, 0.029232732854534975, 0.029232732854534975, 0.029232732854534975, 0.029232732854534975, 0.013607283081933553, 0.010478962970312823, 0.010478962970312823, 0.010478962970312823, 0.009983074485407709, 0.009983074485407709, 0.009983074485407709, 0.009983074485407709, 0.00821548966950257, 0.0050006947855751, 0.00317499392345005, 0.0027876570426695756, 0.0027876570426695756, 0.0027876570426695756, 0.000842309435619432, 0.000618857999075094, 0.00019999396088181583), curve_nogo = c(0.9360312437209708, 0.8943008066738906, 0.824908404748071, 0.7894363741868631, 0.7894363741868631, 0.7754867625215374, 0.7272729569375629, 0.6434575664356205, 0.6428586680471624, 0.6428586680471624, 0.6428586680471624, 0.6351691028828969, 0.6351691028828969, 0.6004806757505677, 0.4743758221734216, 0.4743758221734216, 0.4743758221734216, 0.4743758221734216, 0.4743758221734216, 0.4742001669821098, 0.4742001669821098, 0.4742001669821098, 0.47107162118493706, 0.47107162118493706, 0.4522823483296004, 0.31250133729144036, 0.31250133729144036, 0.31250133729144036, 0.31250133729144036, 0.31250133729144036, 0.31250133729144036, 0.31250133729144036, 0.31250133729144036, 0.31250133729144036, 0.31250133729144036, 0.31250133729144036, 0.31250133729144036, 0.3124664371909982, 0.3115538301228717, 0.27568449524892386, 0.1820194948817842, 0.1820194948817842, 0.1820194948817842, 0.1820194948817842, 0.1820194948817842, 0.1820194948817842, 0.1820194948817842, 0.1820194948817842, 0.1820194948817842, 0.1820194948817842, 0.1820194948817842, 0.1820194948817842, 0.1820194948817842, 0.1820194948817842, 0.1820194948817842, 0.10652210989787712, 0.09533801891255769, 0.09315300280024655, 0.09315300280024655, 0.092972328889183, 0.092972328889183, 0.092972328889183, 0.092972328889183, 0.0929681165691327, 0.0929681165691327, 0.0929681165691327, 0.0929681165691327, 0.0929681165691327, 0.0929681165691327, 0.0929681165691327, 0.056372802045602396, 0.04499540247596093, 0.04179868226405913, 0.04179868226405913, 0.04179868226405913, 0.041368453217656635, 0.041368453217656635, 0.041368453217656635, 0.041368453217656635, 0.041346697310887505, 0.041346697310887505, 0.041346697310887505, 0.019776015886914054, 0.019776015886914054, 0.016580561319679932, 0.016580561319679932, 0.01595627100187675, 0.015956037626780276, 0.015956037626780276, 0.015904416509333545, 0.008258294030383372, 0.005946695387662566, 0.005946695387662566, 0.005330185061081506, 0.005328981541067139, 0.0032437514376666052, 0.0015560507274942057, 0.0014802327415182229, 0.0004087239987645357), oc = data.frame( Go = c(0.04539569696408934, 0.39951932424943226), NoGo = c(0.7337628932528911, 0.1820194948817842), Gray = c(0.22084140978301947, 0.41846118086878353), Miss = c(0.0, 0.0) ) ), D3 = list( gamma_go = 0.39, gamma_nogo = 0.56, prob_go = 0.06644763953101097, prob_nogo = 0.05730992128, curve_go = c(0.9460485735951875, 0.8188773542124149, 0.8188773542124149, 0.8188773542124149, 0.8188773542124149, 0.6069253219077941, 0.6069253219077941, 0.6069253219077941, 0.6069253219077941, 0.6069253219077941, 0.6069253219077941, 0.6069253219077941, 0.3684792855650957, 0.3684792855650957, 0.3684792855650957, 0.3684792855650957, 0.3684792855650957, 0.3684792855650957, 0.3684792855650957, 0.3684792855650957, 0.3684792855650957, 0.3684792855650957, 0.3684792855650957, 0.1777224564909369, 0.1777224564909369, 0.1777224564909369, 0.1777224564909369, 0.1777224564909369, 0.1777224564909369, 0.1777224564909369, 0.1777224564909369, 0.1777224564909369, 0.1777224564909369, 0.1777224564909369, 0.1777224564909369, 0.1777224564909369, 0.1777224564909369, 0.1777224564909369, 0.06644763953101097, 0.06644763953101097, 0.06644763953101097, 0.06644763953101097, 0.06644763953101097, 0.06644763953101097, 0.06644763953101097, 0.06644763953101097, 0.06644763953101097, 0.06644763953101097, 0.06644763953101097, 0.06644763953101097, 0.06644763953101097, 0.06644763953101097, 0.06644763953101097, 0.06644763953101097, 0.01875843226247128, 0.01875843226247128, 0.01875843226247128, 0.01875843226247128, 0.01875843226247128, 0.01875843226247128, 0.01875843226247128, 0.01875843226247128, 0.01875843226247128, 0.01875843226247128, 0.01875843226247128, 0.01875843226247128, 0.01875843226247128, 0.01875843226247128, 0.01875843226247128, 0.0038555549910526286, 0.0038555549910526286, 0.0038555549910526286, 0.0038555549910526286, 0.0038555549910526286, 0.0038555549910526286, 0.0038555549910526286, 0.0038555549910526286, 0.0038555549910526286, 0.0038555549910526286, 0.0038555549910526286, 0.0038555549910526286, 0.0038555549910526286, 0.0005438044862929281, 0.0005438044862929281, 0.0005438044862929281, 0.0005438044862929281, 0.0005438044862929281, 0.0005438044862929281, 0.0005438044862929281, 0.0005438044862929281, 0.0005438044862929281, 4.704191057897302e-05, 4.704191057897302e-05, 4.704191057897302e-05, 4.704191057897302e-05, 4.704191057897302e-05, 1.8816764231589208e-06, 1.8816764231589208e-06, 1.8816764231589208e-06), curve_nogo = c(0.980408958976, 0.980408958976, 0.91655667712, 0.91655667712, 0.91655667712, 0.91655667712, 0.91655667712, 0.77466271744, 0.77466271744, 0.77466271744, 0.77466271744, 0.77466271744, 0.77466271744, 0.77466271744, 0.56182177792, 0.56182177792, 0.56182177792, 0.56182177792, 0.56182177792, 0.56182177792, 0.56182177792, 0.56182177792, 0.56182177792, 0.56182177792, 0.56182177792, 0.334791442432, 0.334791442432, 0.334791442432, 0.334791442432, 0.334791442432, 0.334791442432, 0.334791442432, 0.334791442432, 0.334791442432, 0.334791442432, 0.334791442432, 0.334791442432, 0.334791442432, 0.334791442432, 0.334791442432, 0.158212292608, 0.158212292608, 0.158212292608, 0.158212292608, 0.158212292608, 0.158212292608, 0.158212292608, 0.158212292608, 0.158212292608, 0.158212292608, 0.158212292608, 0.158212292608, 0.158212292608, 0.158212292608, 0.158212292608, 0.05730992128, 0.05730992128, 0.05730992128, 0.05730992128, 0.05730992128, 0.05730992128, 0.05730992128, 0.05730992128, 0.05730992128, 0.05730992128, 0.05730992128, 0.05730992128, 0.05730992128, 0.05730992128, 0.05730992128, 0.05730992128, 0.01526726656, 0.01526726656, 0.01526726656, 0.01526726656, 0.01526726656, 0.01526726656, 0.01526726656, 0.01526726656, 0.01526726656, 0.01526726656, 0.01526726656, 0.01526726656, 0.01526726656, 0.00281018368, 0.00281018368, 0.00281018368, 0.00281018368, 0.00281018368, 0.00281018368, 0.00281018368, 0.00281018368, 0.00281018368, 0.000318767104, 0.000318767104, 0.000318767104, 0.000318767104, 1.6777216e-05, 1.6777216e-05), oc = data.frame( Go = c(0.06644763953101097, 0.665208557568), NoGo = c(0.6315207144349043, 0.05730992128), Gray = c(0.30203164603408467, 0.277481521152), Miss = c(0.0, 0.0) ) ), D5 = list( gamma_go = 0.8, gamma_nogo = 0.46, prob_go = 0.09182105764481728, prob_nogo = 0.12048530877083947, curve_go = c(0.9936791760551595, 0.9887909515032317, 0.9798444380610416, 0.9714401437935783, 0.944861550588807, 0.944861550588807, 0.944861550588807, 0.9345753549355929, 0.9317126563916205, 0.8728283514045517, 0.8728283514045517, 0.8728283514045517, 0.8728283514045517, 0.8640951064374595, 0.8640951064374595, 0.832578838007728, 0.8323350941117238, 0.7527131282954047, 0.7527131282954047, 0.7527131282954047, 0.7527131282954047, 0.7527131282954047, 0.7478215515424739, 0.7478215515424739, 0.7478215515424739, 0.7213713341484944, 0.7213713231533782, 0.5900143119153444, 0.5900143119153444, 0.5899777503309437, 0.5899777503309437, 0.5899777503309437, 0.5899777503309437, 0.5899777503309437, 0.5899777503309437, 0.5899752764297812, 0.5883503171230866, 0.5883503171230866, 0.5882376000013704, 0.5718094922936588, 0.40998567708953937, 0.40998567708953937, 0.40998567708953937, 0.40998567708953937, 0.40998567708953937, 0.40998567708953937, 0.40998567708953937, 0.40998567708953937, 0.40998567708953937, 0.40998567708953937, 0.40998567708953937, 0.40998567708953937, 0.40998567708953937, 0.4099855121627952, 0.2781609336050496, 0.24728670677785117, 0.24704296288184696, 0.24704296288184696, 0.24704296288184696, 0.24704296288184696, 0.24704296288184696, 0.24704296288184696, 0.24704296288184696, 0.24704296288184696, 0.24704296288184696, 0.24704296288184696, 0.24704296288184696, 0.2105606574743696, 0.16623746728750743, 0.1359048935625405, 0.1271716485954483, 0.1271716485954483, 0.12717053533992517, 0.12717053533992517, 0.12643930365191258, 0.12643930365191258, 0.12643930365191258, 0.12643930365191258, 0.12643930365191258, 0.09182105764481728, 0.06542464506440712, 0.06524930731951521, 0.05513844941119291, 0.05513844941119291, 0.05513399638910042, 0.05513399638910042, 0.0538340289437447, 0.0538340289437447, 0.028559856206421687, 0.02824424826561626, 0.020155561938958417, 0.020155561938958417, 0.018627244069717278, 0.018627244069717278, 0.006320823944840479, 0.006320823944840479, 0.005086480466454774, 0.0017525193506920857, 0.0010521614950701466), curve_nogo = c(0.9565126094004167, 0.9482174353272205, 0.8831998104072866, 0.8769094011065444, 0.8769094011065444, 0.7560145747512932, 0.7560145747512932, 0.7526433779024815, 0.7526433779024815, 0.7484946184087029, 0.7242027810800944, 0.5840754413879621, 0.5840754413879621, 0.584021011598685, 0.584021011598685, 0.5828214146935686, 0.5828214146935686, 0.581339714874362, 0.5678442496918017, 0.5085494277910066, 0.3985987646637045, 0.3985987646637045, 0.3985987646637045, 0.3985987646637045, 0.3985987646637045, 0.3985900170189992, 0.3985900170189992, 0.3982901177927201, 0.3982901177927201, 0.3927861229375173, 0.3883410234798973, 0.3401873376133784, 0.23645127718457593, 0.23645127718457593, 0.23645127718457593, 0.23645127718457593, 0.23645127718457593, 0.23645127718457593, 0.23645127718457593, 0.23645127718457593, 0.23645127718457593, 0.23645127718457593, 0.23645127718457593, 0.23645044407555638, 0.23530353065864862, 0.12048530877083947, 0.12044087925583517, 0.12044087925583517, 0.12044087925583517, 0.12044087925583517, 0.12044087925583517, 0.12044087925583517, 0.12044087925583517, 0.12044087925583517, 0.12044087925583517, 0.12044087925583517, 0.12044087925583517, 0.12044087925583517, 0.12044087925583517, 0.0663256993043717, 0.05481927710246143, 0.052340518191378936, 0.052340518191378936, 0.05233496413124863, 0.05214455192408728, 0.05214455192408728, 0.05214455192408728, 0.05214455192408728, 0.05214455192408728, 0.05214455192408728, 0.05214451621941502, 0.05214451621941502, 0.022539400835089284, 0.02253643886742233, 0.019392544173173883, 0.019392544173173883, 0.019392544173173883, 0.019008658450400378, 0.019008658450400378, 0.019008658450400378, 0.019008658450400378, 0.019008658450400378, 0.008734145982730568, 0.008733907951582126, 0.00623369804737794, 0.00623369804737794, 0.005784392344912404, 0.005784392344912404, 0.005784392344912404, 0.005784392344912404, 0.002929653182028718, 0.001811780121552814, 0.001462458488858542, 0.001462458488858542, 0.001462458488858542, 0.0004994168687168717, 0.0003098918586551501, 0.00013041961720086529, 5.724662212067328e-05), oc = data.frame( Go = c(0.09182105764481728, 0.4914505722089934), NoGo = c(0.5900144878372048, 0.12048530877083947), Gray = c(0.3181644545179779, 0.38806411902016713), Miss = c(0.0, 0.0) ) ) ) cal_args <- list( D1 = list(scenario_go = data.frame(pi_t = 0.4, pi_c = 0.4), scenario_nogo = data.frame(pi_t = 0.7, pi_c = 0.4), target_go = 0.05, target_nogo = 0.2), D3 = list(scenario_go = data.frame(pi_t = 1 / 3), scenario_nogo = data.frame(pi_t = 0.6), target_go = 0.1, target_nogo = 0.1), D5 = list(scenario_go = data.frame(pi_t = 0.4, pi_c = 0.4), scenario_nogo = data.frame(pi_t = 0.7, pi_c = 0.4), target_go = 0.1, target_nogo = 0.2) ) run_cal <- function(name, ...) { a <- cal_args[[name]] qdm_calibrate(ref_design(name), a$scenario_go, a$scenario_nogo, a$target_go, a$target_nogo, ...) }