Nothing
## ----setup, echo=FALSE--------------------------------------------------------
library(spreval)
knitr::opts_knit$set(global.par = TRUE)
## ---- include = FALSE---------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
dev = "png", dev.args = list(type = "cairo-png")
)
#set graphics device so that pkgdown::build_site() will run, seems to default to ragg
## ---- echo=TRUE---------------------------------------------------------------
data(catchcan)
cc.data<-catchcan$lateral
knitr::kable(cc.data,format="html")
## ----echo=TRUE,fig.show='hold',fig.width = 4.5,fig.height = 4.5,fig.cap="Raw catch can data, in./hr"----
x<-seq(-35,25,10) # x=0 is lateral position. 10 x 10 catch can spacing
y<-seq(55,5,-10)
grd<-list(x,y) # prepare list for make.surface function [fields]
grid<-fields::make.surface.grid(grd)
rates<-matrix(t(cc.data),ncol=1)#transpose matrix and stack rows into 1 column
cdata<-cbind(grid[ ,1],grid[ ,2],rates) #construct required catch can data matrix
sp.x<-rep(0,3);sp.y<-seq(0,60,30)# sprinkler spacing (y) = 30 ft
sploc<-cbind(sp.x,sp.y) #construct required sprinkler location matrix
spr.lab<-c("s4","s5","s6")# labels for sprinklers
plotss(cdata,sploc,spklab=spr.lab)# call function
## ---- echo=TRUE---------------------------------------------------------------
sl<-50 # 50 ft lateral spacing (pass to overlap)
sc<-10 # 10 ft catch can spacing perpindicular to lateral (pass to overlap)
#split data into left and right of lateral
left<-cc.data[ ,1:4];right<-cc.data[ ,5:7]#first 4 columns left of lateral
super.l=matrix(data=NA,nrow=nrow(left),ncol=sl/sc) # columns will be limited to between 2 adjacent laterals
super.r=matrix(data=NA,nrow=nrow(right),ncol=sl/sc)
for (i in 1:nrow(left)){
lcdata<-rev(left[i,]);rcdata<-right[i, ]#overlap requires order from proximal lateral to distal so rev (left)
super<-overlap(sl,sc,lcdata,rcdata)
super.l[i, ]<-super$sum.left;super.r[i, ]<-super$sum.right
}
knitr::kable(super.l,format="html")
knitr::kable(super.r,format="html")
## ----echo=TRUE,fig.show='hold',fig.width = 4.5,fig.height = 4.5---------------
x<-seq(5,45,10) # x=0 is lateral position; look at right of test lateral
y<-seq(55,5,-10) # start at "top" y position, as a matrix
grd<-list(x,y) # prepare list for make.surface function [fields]
grid<-fields::make.surface.grid(grd)
o.rates<-matrix(t(super.r),ncol=1)#transpose matrix and stack rows into 1 column
o.cdata<-cbind(grid[ ,1],grid[ ,2],o.rates) #construct required catch can data matrix
sp.x.o<-c(sp.x,rep(50,3));sp.y.o<-c(sp.y,seq(0,60,30))#add second lateral location for overlap
sploc.o<-cbind(sp.x.o,sp.y.o) #sprinkler location matrix
## ----echo=TRUE,fig.show='hold',fig.width = 4.5,fig.height = 4.5,fig.cap="Overlapped catch can data rates (in./hr) at 50 ft lateral spacing"----
spr.lab<-rep(c("s4","s5","s6"),2)# labels for sprinklers
plotss(o.cdata,sploc.o,spklab=spr.lab)# call function
## ---- echo=TRUE---------------------------------------------------------------
lower<-super.r[4:6,];upper<-super.r[1:3,]#use superimposed data
upper.uni<-c(CU(upper),DU(upper),DU.lh(upper),PELQ(upper,SI=FALSE,rate=4.6,ss=30,sl=50,dur=1))# use U.S. cust. units
lower.uni<-c(CU(lower),DU(lower),DU.lh(lower),PELQ(lower,SI=FALSE,rate=4.6,ss=30,sl=50,dur=1))
table<-round(rbind(upper.uni,lower.uni),0)
knitr::kable(table,row.names=TRUE,col.names=c("CU","DU","DU.lh","PELQ"))
## ---- echo=FALSE--------------------------------------------------------------
sl<-40 # 40 ft lateral spacing (pass to overlap)
sc<-10 # 10 ft catch can spacing perpindicular to lateral (pass to overlap)
#split data into left and right of lateral
left<-cc.data[ ,1:4];right<-cc.data[ ,5:7]#first 4 columns left of lateral and 3 to right of lateral
super.l.40=matrix(data=NA,nrow=nrow(left),ncol=sl/sc) # columns will be limited to between 2 adjacent laterals
super.r.40=matrix(data=NA,nrow=nrow(right),ncol=sl/sc)
for (i in 1:nrow(left)){
lcdata<-rev(left[i,]);rcdata<-right[i, ]#overlap requires order from proximal lateral to distal so rev (left)
super.40<-overlap(sl,sc,lcdata,rcdata)
super.l.40[i, ]<-super.40$sum.left;super.r.40[i, ]<-super.40$sum.right
}
knitr::kable(super.r.40,caption ="40 ft lateral spacing",format="html")
sl<-60 # 60 ft lateral spacing (pass to overlap)
sc<-10 # 10 ft catch can spacing perpindicular to lateral (pass to overlap)
#split data into left and right of lateral
super.l.60=matrix(data=NA,nrow=nrow(left),ncol=sl/sc) # columns will be limited to between 2 adjacent laterals
super.r.60=matrix(data=NA,nrow=nrow(right),ncol=sl/sc)
for (i in 1:nrow(left)){
lcdata<-rev(left[i,]);rcdata<-right[i, ]#overlap requires order from proximal lateral to distal so rev (left)
super.60<-overlap(sl,sc,lcdata,rcdata)
super.l.60[i, ]<-super.60$sum.left;super.r.60[i, ]<-super.60$sum.right
}
knitr::kable(super.r.60,caption= "60 ft lateral spacing",format="html")
## ---- echo=FALSE--------------------------------------------------------------
lower<-super.r.40[4:6,];upper<-super.r.40[1:3,]#use superimposed data
upper.uni<-c(CU(upper),DU(upper),DU.lh(upper),PELQ(upper,SI=FALSE,rate=4.6,ss=30,sl=40,dur=1))# use U.S. cust. units
lower.uni<-c(CU(lower),DU(lower),DU.lh(lower),PELQ(lower,SI=FALSE,rate=4.6,ss=30,sl=40,dur=1))
table<-round(rbind(upper.uni,lower.uni),0)
knitr::kable(table,row.names=TRUE,col.names=c("CU","DU","DU.lh","PELQ"),caption="40 ft lateral spacing")
lower<-super.r.60[4:6,];upper<-super.r.60[1:3,]#use superimposed data
upper.uni<-c(CU(upper),DU(upper),DU.lh(upper),PELQ(upper,SI=FALSE,rate=4.6,ss=30,sl=60,dur=1))# use U.S. cust. units
lower.uni<-c(CU(lower),DU(lower),DU.lh(lower),PELQ(lower,SI=FALSE,rate=4.6,ss=30,sl=60,dur=1))
table<-round(rbind(upper.uni,lower.uni),0)
knitr::kable(table,row.names=TRUE,col.names=c("CU","DU","DU.lh","PELQ"),caption="60 ft lateral spacing")
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.