Global.R into dev

This commit is contained in:
2026-05-18 17:40:35 +02:00
parent b38e60e1a3
commit b0cf97a5ee
68 changed files with 7165 additions and 0 deletions
@@ -0,0 +1,54 @@
Calc_DilRes <- function(as=3, bs=1, cs=-4, ds=10, at=3, bt=1, dt=10,r=0.0001,ct=cs-r,
sd_fac=0.1, gt=1, gs=1, log_conc,
heteroNoise=FALSE, noDilSeries, noDils) {
yAxfac <- (ds-as)
log_dose <- log_conc
isRef <- rep(c(1,0),1,each=length(log_conc)*noDilSeries)
isSample <- rep(c(0,1),1,each=length(log_conc)*noDilSeries)
browser()
av <- as*isRef + at*isSample + (ds*isRef + dt*isSample - as*isRef - at*isSample)/
(1+isRef*exp(bs*(cs - log_dose)) + isSample*exp(bt*(ct-log_dose)))
if (heteroNoise) {
# heterosc noise
ro_jit <- matrix(unlist(map(av, function(x) x+rnorm(1,0,x*sd_fac/100))), nrow=noDils, ncol=noDilSeries*2)
} else {
# homosc noise
ro_jit <- matrix(unlist(map(av, function(x) x+rnorm(1,0,sd_fac*yAxfac/100))), nrow=noDils, ncol=noDilSeries*2)
}
ro_jit <- abs(ro_jit)
ro_jit2 <- cbind(ro_jit, log_dose)
if (noDilSeries==3) {
colnames(ro_jit2) <- c("R_dil1","R_dil2","R_dil3","T_dil1","T_dil2","T_dil3", "log_dose")
} else {
colnames(ro_jit2) <- c("R_dil1","R_dil2","T_dil1","T_dil2", "log_dose")
}
return(ro_jit2)
}
library(openxlsx)
Conc <- 9*1/(3^(1:11))
Conc_ <- c(9, Conc)
ro_new <- list()
ro_new[[1]] <- Calc_DilRes(as=1000, bs=-2, cs=-4, ds=10000, at=1000, bt=-2, dt=10000, log_conc = log(Conc_),
sd_fac=3.3,
# auslenkU=outlierU,
# auslenkM=outlierM,
# auslenkL=outlierL,
heteroNoise = F, noDilSeries = 2, noDils = 12)
ro_new[[2]] <- Calc_DilRes(as=1000, bs=-2, cs=-4, ds=10000, at=1000, bt=-2, dt=10000, log_conc = log(Conc_),
sd_fac=3.3,r=0.1,
# auslenkU=outlierU,
# auslenkM=outlierM,
# auslenkL=outlierL,
heteroNoise = F, noDilSeries = 2, noDils = 12)
ro_new[[3]] <- Calc_DilRes(as=1000, bs=-2, cs=-4, ds=10000, at=1000, bt=-2, dt=10000, log_conc = log(Conc_),
sd_fac=3.2, r=-0.3,
# auslenkU=outlierU,
# auslenkM=outlierM,
# auslenkL=outlierL,
heteroNoise = F, noDilSeries = 2, noDils = 12)
write.xlsx(ro_new, "~/plateflow/wizard/Tests3Plates.xlsx")