[R] plot representation of calculated value known to be 7.4
Troels Ring
tring at gvdnet.dk
Mon Dec 25 19:12:20 CET 2017
Dear friends - merry Christmas and thanks a lot for much help during the
year!
In the example below I fail to understand how the calculated value pH is
represented in a simple plot - also included. The calculations are
useful in practice and likely to be right in principle but I cannot see
how this occurs: why a calculated value of 7.4 known as numeric is not
simply plotted as such. It happened on Windows both 7 and 10 with R
version 3.4.1.
All best wishes
Troels
ff <- function(H,SID,ATOT,ka) H + SID - kw/H - ka*ATOT/(H+ka)
ka <- 1e-7
kw <- 1e-14
ATOT <- seq(0,0.3,length=100)*1e-3
for (i in 1:length(ATOT)) {
SID[i] <- uniroot(ff,c(-1,1),tol=.Machine$double.eps,maxiter=100000,ka=ka,
ATOT=ATOT[i], H = 10^-7.4)$root}
ATOT
#confirm pH 0 7.4
H <- c()
for (i in 1:length(ATOT)) {
H[i] <-
uniroot(ff,c(1e-19,1),tol=.Machine$double.eps,maxiter=100000,ka=ka,
ATOT=ATOT[i], SID = SID[i])$root}
(pH <- -log10(H))
plot(pH)
str(pH)
# num [1:100] 7.4 7.4 7.4 7.4 7.4 ...
z <- rep(7.4,length(ATOT))
all.equal(z,pH)
#TRUE
points(z,col="red")
More information about the R-help
mailing list