Repository 'insect_phenology_model'
hg clone https://toolshed.g2.bx.psu.edu/repos/greg/insect_phenology_model

Changeset 19:3c6e94e477cb (2018-03-06)
Previous changeset 18:f5ecff4800f2 (2018-03-06) Next changeset 20:214217142600 (2018-03-08)
Commit message:
Uploaded
modified:
insect_phenology_model.R
b
diff -r f5ecff4800f2 -r 3c6e94e477cb insect_phenology_model.R
--- a/insect_phenology_model.R Tue Mar 06 13:39:14 2018 -0500
+++ b/insect_phenology_model.R Tue Mar 06 14:26:45 2018 -0500
b
b'@@ -52,38 +52,6 @@\n     return(temperature_data_frame);\n }\n \n-dev.egg = function(temperature) {\n-    # This function is not used, but was\n-    # in the original, so keep it for now.\n-    dev.rate = -0.9843 * temperature + 33.438;\n-    return(dev.rate);\n-}\n-\n-dev.emerg = function(temperature) {\n-    # This function is not used, but was\n-    # in the original, so keep it for now.\n-    emerg.rate = -0.5332 * temperature + 24.147;\n-    return(emerg.rate);\n-}\n-\n-dev.old = function(temperature) {\n-    # This function is not used, but was\n-    # in the original, so keep it for now.\n-    n34 = -0.6119 * temperature + 17.602;\n-    n45 = -0.4408 * temperature + 19.036;\n-    dev.rate = mean(n34 + n45);\n-    return(dev.rate);\n-}\n-\n-dev.young = function(temperature) {\n-    # This function is not used, but was\n-    # in the original, so keep it for now.\n-    n12 = -0.3728 * temperature + 14.68;\n-    n23 = -0.6119 * temperature + 25.249;\n-    dev.rate = mean(n12 + n23);\n-    return(dev.rate);\n-}\n-\n get_date_labels = function(temperature_data_frame, num_rows) {\n     # Keep track of the years to see if spanning years.\n     month_labels = list();\n@@ -103,6 +71,22 @@\n     return(c(unlist(month_labels)));\n }\n \n+\n+get_file_path = function(life_stage, base_name, life_stage_nymph=NULL, life_stage_adult=NULL) {\n+    if (!is.null(life_stage_nymph)) {\n+        lsi = get_life_stage_index(life_stage, life_stage_nymph=life_stage_nymph);\n+        file_name = paste(lsi, tolower(life_stage_nymph), base_name, sep="_");\n+    } else if (!is.null(life_stage_adult)) {\n+        lsi = get_life_stage_index(life_stage, life_stage_adult=life_stage_adult);\n+        file_name = paste(lsi, tolower(life_stage_adult), base_name, sep="_");\n+    } else {\n+        lsi = get_life_stage_index(life_stage);\n+        file_name = paste(lsi, base_name, sep="_");\n+    }\n+    file_path = paste("output_dir", file_name, sep="/");\n+    return(file_path);\n+}\n+\n get_life_stage_index = function(life_stage, life_stage_nymph=NULL, life_stage_adult=NULL) {\n     # Name collection elements so that they\n     # are displayed in logical order.\n@@ -346,7 +330,6 @@\n }\n # Read the temperature data into a data frame.\n temperature_data_frame = parse_input_data(opt$input, opt$num_days);\n-output_dir = "output_dir";\n # Get the date labels for plots.\n date_labels = get_date_labels(temperature_data_frame, opt$num_days);\n # All latitude values are the same, so get the value for plots from the first row.\n@@ -968,9 +951,7 @@\n         if (life_stage == "Egg") {\n             # Start PDF device driver.\n             dev.new(width=20, height=30);\n-            lsi = get_life_stage_index(life_stage);\n-            file_name = paste(lsi, "egg_pop_by_generation.pdf", sep="_");\n-            file_path = paste(output_dir, file_name, sep="/");\n+            file_path = get_file_path(life_stage, "egg_pop_by_generation.pdf")\n             pdf(file=file_path, width=20, height=30, bg="white");\n             par(mar=c(5, 6, 4, 4), mfrow=c(3, 1));\n             # Egg population size by generation.\n@@ -984,16 +965,14 @@\n             for (life_stage_nymph in life_stages_nymph) {\n                 # Start PDF device driver.\n                 dev.new(width=20, height=30);\n-                lsi = get_life_stage_index(life_stage, life_stage_nymph=life_stage_nymph);\n-                file_name = paste(lsi, tolower(life_stage_nymph), "nymph_pop_by_generation.pdf", sep="_");\n-                file_path = paste(output_dir, file_name, sep="/");\n+                file_path = get_file_path(life_stage, "nymph_pop_by_generation.pdf", life_stage_nymph=life_stage_nymph)\n                 pdf(file=file_path, width=20, height=30, bg="white");\n                 par(mar=c(5, 6, 4, 4), mfrow=c(3, 1));\n                 # Nymph population size by generation.\n                 maxval = max(P_nymphs+F1_nymphs+F2_nymphs) + 100;\n                 render_chart(date_labels, "pop_size_by_generation", opt$plot_std_error, opt$insect, opt$location, latitude, start_date, end_da'..b'es_nymph=life_stage_nymph);\n                 # Turn off device driver to flush output.\n                 dev.off();\n             }\n@@ -1001,9 +980,7 @@\n             for (life_stage_adult in life_stages_adult) {\n                 # Start PDF device driver.\n                 dev.new(width=20, height=30);\n-                lsi = get_life_stage_index(life_stage, life_stage_adult=life_stage_adult);\n-                file_name = paste(lsi, tolower(life_stage_adult), "adult_pop_by_generation.pdf", sep="_");\n-                file_path = paste(output_dir, file_name, sep="/");\n+                file_path = get_file_path(life_stage, "adult_pop_by_generation.pdf", life_stage_adult=life_stage_adult)\n                 pdf(file=file_path, width=20, height=30, bg="white");\n                 par(mar=c(5, 6, 4, 4), mfrow=c(3, 1));\n                 # Adult population size by generation.\n@@ -1019,9 +996,7 @@\n             # Name collection elements so that they\n             # are displayed in logical order.\n             dev.new(width=20, height=30);\n-            lsi = get_life_stage_index(life_stage);\n-            file_name = paste(lsi, "total_pop_by_generation.pdf", sep="_");\n-            file_path = paste(output_dir, file_name, sep="/");\n+            file_path = get_file_path(life_stage, "total_pop_by_generation.pdf")\n             pdf(file=file_path, width=20, height=30, bg="white");\n             par(mar=c(5, 6, 4, 4), mfrow=c(3, 1));\n             # Total population size by generation.\n@@ -1037,9 +1012,7 @@\n         if (life_stage == "Egg") {\n             # Start PDF device driver.\n             dev.new(width=20, height=30);\n-            lsi = get_life_stage_index(life_stage);\n-            file_name = paste(lsi, "egg_pop.pdf", sep="_");\n-            file_path = paste(output_dir, file_name, sep="/");\n+            file_path = get_file_path(life_stage, "egg_pop.pdf")\n             pdf(file=file_path, width=20, height=30, bg="white");\n             par(mar=c(5, 6, 4, 4), mfrow=c(3, 1));\n             # Egg population size.\n@@ -1052,9 +1025,7 @@\n             for (life_stage_nymph in life_stages_nymph) {\n                 # Start PDF device driver.\n                 dev.new(width=20, height=30);\n-                lsi = get_life_stage_index(life_stage, life_stage_nymph=life_stage_nymph);\n-                file_name = paste(lsi, tolower(life_stage_nymph), "nymph_pop.pdf", sep="_");\n-                file_path = paste(output_dir, file_name, sep="/");\n+                file_path = get_file_path(life_stage, "nymph_pop.pdf", life_stage_nymph=life_stage_nymph)\n                 pdf(file=file_path, width=20, height=30, bg="white");\n                 par(mar=c(5, 6, 4, 4), mfrow=c(3, 1));\n                 if (life_stage_nymph=="Total") {\n@@ -1080,9 +1051,7 @@\n             for (life_stage_adult in life_stages_adult) {\n                 # Start PDF device driver.\n                 dev.new(width=20, height=30);\n-                lsi = get_life_stage_index(life_stage, life_stage_adult=life_stage_adult);\n-                file_name = paste(lsi, tolower(life_stage_adult), "adult_pop.pdf", sep="_");\n-                file_path = paste(output_dir, file_name, sep="/");\n+                file_path = get_file_path(life_stage, "adult_pop.pdf", life_stage_adult=life_stage_adult)\n                 pdf(file=file_path, width=20, height=30, bg="white");\n                 par(mar=c(5, 6, 4, 4), mfrow=c(3, 1));\n                 if (life_stage_adult=="Total") {\n@@ -1111,9 +1080,7 @@\n         } else if (life_stage == "Total") {\n             # Start PDF device driver.\n             dev.new(width=20, height=30);\n-            lsi = get_life_stage_index(life_stage);\n-            file_name = paste(lsi, "total_pop.pdf", sep="_");\n-            file_path = paste(output_dir, file_name, sep="/");\n+            file_path = get_file_path(life_stage, "total_pop.pdf")\n             pdf(file=file_path, width=20, height=30, bg="white");\n             par(mar=c(5, 6, 4, 4), mfrow=c(3, 1));\n             # Total population size.\n'