## ---- include = FALSE---------------------------------------------------------
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>"
)

## ----setup--------------------------------------------------------------------
library(rbcmodel)

## ----search_less--------------------------------------------------------------
test<-search_enzyme("Synechococcus",data="comprehensive")
#filter columns and restrict entries for readability
test[1:10,c(1:5,9,12,15,18,21,24,26,27,29)]

## ----search_nomutant----------------------------------------------------------
test<-test[test$mutant=="FALSE",]
#no longer restricting entry number
test[,c(1:4,9,12,15,18,21,24,26,27,29)] #removed mutant column, as they are all not mutants now

## ----search_check-------------------------------------------------------------
search_enzyme("Synechococcus",data="comprehensive")[c(33,41),]

## ----enzyme_from_scratch------------------------------------------------------
SUP05_Rbc<-new_enzyme(kcat_val=7.2,Kc_val=36,Ko_val=68,S_val=14)
SUP05_Rbc

## ----enzyme_from_scratch2-----------------------------------------------------
SUP05_Rbc2<-new_enzyme(kcat_val=7.2,Kc_val=36,Ko_val=68,S_val=14,temp=22,S_T=30)
SUP05_Rbc2

## ----compare_vulgaris---------------------------------------------------------
search_enzyme("Beta",data="comprehensive")[3:4,]

## ----search_vulgaris----------------------------------------------------------
df1<-search_enzyme("Beta",data="comprehensive")
df1

## ----merge_median_vulgaris----------------------------------------------------
df2<-merge_entries(df1,"identifier",df1$identifier,"median",new_id="Vulgaris_merged")
df2

## ----merge_smaller_output-----------------------------------------------------
df3<-merge_entries(df1,"identifier",df1$identifier,"median",new_id="Vulgaris_merged",keep_merged=FALSE)
df3

## ----merge_orr_bad------------------------------------------------------------
df4<-merge_entries(df1,"identifier",c(df1$identifier[1],df1$identifier[4]),"last",new_id="Vulgaris_merged",keep_unmerged=FALSE)
df4

## ----merge_orr_correct--------------------------------------------------------
df4<-merge_entries(df1,"identifier",c(df1$identifier[4],df1$identifier[1]),"last",new_id="Vulgaris_merged",keep_unmerged=FALSE)
df4

## ----merge_median_marcosii----------------------------------------------------
df5<-merge_entries(df1,"identifier",df1$identifier,"median",new_id="Vulgaris_merged")
df5<-merge_entries(df5,"identifier",c("Vulgaris_merged",df1$identifier[1]),"last",new_id="Marcosii_merged",keep_unmerged=FALSE)
df5

## ----create_marcosii----------------------------------------------------------
marcosii_Rbc<-Enzyme("Marcosii_merged",data=df5)
marcosii_Rbc

## ----creat_thalassiosira------------------------------------------------------
ta_df<-search_enzyme("antarctica")[2:3,]
ta_merged<-merge_entries(ta_df,"identifier",ta_df$identifier,"median",new_id="t_antarctica_merged")
Enzyme("t_antarctica_merged",data=ta_merged)

## ----search_sc----------------------------------------------------------------
search_enzyme("costatum")

## ----search_sc_genus----------------------------------------------------------
sc_df<-search_enzyme("Skeletonema",data="comprehensive")
sc_df

## ----merge_sc-----------------------------------------------------------------
sc_merged<-merge_entries(sc_df,"identifier",sc_df$identifier,"median",new_id="Skeletonema_merged")
sc_merged<-merge_entries(sc_merged,"identifier",c("Skeletonema_merged",sc_df$identifier[1:2]),"last",new_id="Costatum_merged",keep_unmerged=FALSE)
sc_merged
Enzyme("Costatum_merged",data=sc_merged)

## ----search_bh----------------------------------------------------------------
search_enzyme("horologicalis")
diatom_df<-search_enzyme("Diatoms",data="comprehensive")

## ----search_diatom------------------------------------------------------------
search_enzyme("average")
diatom_base<-search_enzyme("average")[14,]

## ----create_bh----------------------------------------------------------------
bh_Rbc<-Enzyme("horologicalis_Young_2016")
bh_Rbc

## ----fix_bh-------------------------------------------------------------------
bh_Rbc<-modify_enzyme(bh_Rbc,S_val=diatom_base$S_val)
bh_Rbc

## ----find_gamma_entries-------------------------------------------------------
gpb_df<-search_enzyme("Gammaproteobacteria",data="comprehensive")[,c(1:4,7,9:10,12,15,18,21,24,26,27,29)]
gpb_df<-gpb_df[gpb_df$form=="1Aq",]
gpb_df<-gpb_df[gpb_df$group=="Bacteria",]
gpb_df<-gpb_df[gpb_df$primary,]
#now to remove the primary and group columns, which we don't need anymore
gpb_df<-gpb_df[,-c(5,14)]
gpb_df

## ----merge_ta-----------------------------------------------------------------
gpb_df<-search_enzyme("Gammaproteobacteria",data="comprehensive")[,c(1:4,9:10,12:13,15:16,18:19,21,24,26,27,29)]
gpb_df<-gpb_df[gpb_df$form=="1Aq",]
gpb_merged<-merge_entries(gpb_df,"identifier",gpb_df$identifier,"median",new_id="gpb_1Aq_merged")
gpb_merged<-merge_entries(gpb_merged,"identifier",c("gpb_1Aq_merged","marinus_Iaq_Hayashi_1998"),"last",new_id="Ta_merged",keep_unmerged=FALSE)
gpb_merged
ta_1Aq<-Enzyme("Ta_merged",data=gpb_merged)
ta_1Aq

## ----fix_ta-------------------------------------------------------------------
ta_1Aq<-modify_enzyme(ta_1Aq,kcat_T=30,Kc_T=25,Ko_T=25,S_T=30)
ta_1Aq

## ----DHScale_from_scratch-----------------------------------------------------
SUP05_DH<-new_DHScale(kcat_dH=35.6,Kc_dH=40.1,Ko_dH=15.5,S_dH=-25.1)
SUP05_DH

## ----create_tr----------------------------------------------------------------
tr_dH<-search_DHScale("repens")
tr_merged<-merge_entries(tr_dH,"identifier",tr_dH$identifier,"median",new_id="t_repens_dH_merged")
DHScale("t_repens_dH_merged",data=tr_merged)

## ----search_ca----------------------------------------------------------------
search_DHScale("album")

## ----search_ca_genus----------------------------------------------------------
ca_dH<-search_DHScale("Chenopodium")
ca_dH

## ----create_album-------------------------------------------------------------
ca_merged<-merge_entries(ca_dH,"identifier",ca_dH$identifier,"median",new_id="Chenopodium_merged")
ca_merged<-merge_entries(ca_merged,"identifier",c("Chenopodium_merged",ca_dH$identifier[1]),"last",new_id="album_merged",keep_unmerged=FALSE)
ca_merged
DHScale("album_merged",data=ca_merged)

## ----search_Zm----------------------------------------------------------------
search_DHScale("Zea")
C4_df<-search_DHScale("C4 plants",data="abridged")

## -----------------------------------------------------------------------------
C4_merged<-merge_entries(C4_df,"identifier",C4_df$identifier,"median",new_id="C4_merged")
zm_merged<-merge_entries(C4_merged,"identifier",c("C4_merged","95"),"last",new_id="Zmays_merged",keep_unmerged=FALSE)
DHScale("Zmays_merged",data=zm_merged)

## ----find_c4_avg--------------------------------------------------------------
C4_average<-search_DHScale("C4 plants",data="averaged")
C4_average

## ----create_zm----------------------------------------------------------------
zm_dH<-DHScale("mays_galmés_2016_dH", data="abridged")
zm_dH

## ----fix_zm-------------------------------------------------------------------
zm_dH<-modify_DHScale(zm_dH,kcat_dH=C4_average$kcat_dH,Ko_dH=C4_average$Ko_dH)
zm_dH

## ----create_DHScale_Av_diatoms------------------------------------------------
form1D_df<-search_DHScale("1D")
form1D_merged<-merge_entries(form1D_df,"identifier",form1D_df$identifier,"median",new_id="1D_merged")
form1D_merged[9,]
Rbc_form1D<-DHScale("1D_merged",data=form1D_merged)
#print to show it's missing values
Rbc_form1D
search_DHScale("Anabaena")
Rbc_form1D<-modify_DHScale(Rbc_form1D,Kc_dH=38.8,Ko_dH=26.7)
Rbc_form1D

## ----change_PGS---------------------------------------------------------------
ta_1Aq
modify_enzyme(ta_1Aq,PGS="canon")

## ----PGS_in_dependence--------------------------------------------------------
#define a DHScale first
avg_1A<-DHScale(search_DHScale("1A",data="averaged")[1,1])
#set PGS pathway to get CO2_dependence() to work
Rbc_ta<-CO2_dependence(ta_1Aq,avg_1A,PGS="canon")
Rbc_ta(100,200,5)

