{
  "_id": "6acba96ffe5cc25786e91f08",
  "Package": "apsimeval",
  "Type": "Package",
  "Title": "Evaluation, Visualisation and Sensitivity Analysis of 'APSIM'\nClassic Output",
  "Version": "0.1.0",
  "Authors@R": "person(\"Sukamal\", \"Sarkar\", role = c(\"aut\", \"cre\"),\nemail = \"sukamal.sarkar@gm.rkmvu.ac.in\",\ncomment = c(ORCID = \"0000-0002-1438-1778\"))",
  "Description": "Reads Agricultural Production Systems sIMulator ('APSIM')\nClassic 7.x '.out' files, pairs simulated series with sparse\nobserved measurements, and computes the goodness-of-fit\nstatistics used in crop-model calibration and validation,\nincluding the decomposition of root mean squared error into\nsystematic and unsystematic components. Produces publication\ngrade figures with 'ggplot2': one-to-one scatter plots,\nresidual and Taylor diagrams, probability of exceedance curves,\nmulti-variable timelines with a secondary axis, and\ndistribution plots, assembled into multi-panel figures at\njournal column widths in colour, greyscale or line art.\nTreatment structure encoded in simulation names is parsed into\nfactor columns, and the sensitivity of an output to those\nfactors is quantified by variance decomposition, one-at-a-time\nanalysis or range screening. A built-in 'shiny' interface\nwatches the output directory and refreshes incrementally as\n'APSIM' regenerates its files.",
  "License": "GPL-3",
  "Encoding": "UTF-8",
  "Config/testthat/edition": "3",
  "RoxygenNote": "7.3.1",
  "VignetteBuilder": "knitr",
  "Language": "en-GB",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-10-11 15:14:54 UTC",
    "User": "root"
  },
  "Author": "Sukamal Sarkar [aut, cre] (ORCID:\n<https://orcid.org/0000-0002-1438-1778>)",
  "Maintainer": "Sukamal Sarkar <sukamal.sarkar@gm.rkmvu.ac.in>",
  "Repository": "https://sukamal99.r-universe.dev",
  "Date/Publication": "2026-09-09 14:10:24 UTC",
  "RemoteUrl": "https://github.com/cran/apsimeval",
  "RemoteRef": "HEAD",
  "RemoteSha": "fd15b97fd4f3315091963507608723d4580a94f9",
  "_user": "sukamal99",
  "_type": "src",
  "_file": "apsimeval_0.1.0.tar.gz",
  "_fileid": "https://r2.ropensci.org/883900d05f74feffa17a2ae40dfde2410ad49ea295b811f1a8c5a6d3a34638c6",
  "_filesize": 301145,
  "_sha256": "883900d05f74feffa17a2ae40dfde2410ad49ea295b811f1a8c5a6d3a34638c6",
  "_expires": "2027-01-19T15:21:17.000Z",
  "_created": "2026-10-11T15:14:54.000Z",
  "_published": "2026-10-11T15:21:19.298Z",
  "_buildurl": "https://github.com/r-universe/sukamal99/actions/runs/38150224656",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_jobs": [
    {
      "job": 114502821019,
      "time": 185,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11706077959"
    },
    {
      "job": 114502820993,
      "time": 152,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11706184243"
    },
    {
      "job": 114502820989,
      "time": 182,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11706149441"
    },
    {
      "job": 114502820987,
      "time": 230,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11706613742"
    },
    {
      "job": 114502023665,
      "time": 227,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11705573354"
    },
    {
      "job": 114502820973,
      "time": 100,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "11706613393"
    },
    {
      "job": 114502820960,
      "time": 103,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11706543667"
    },
    {
      "job": 114502821063,
      "time": 99,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11706578541"
    },
    {
      "job": 114502820965,
      "time": 104,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11706159286"
    }
  ],
  "_upstream": "https://github.com/cran/apsimeval",
  "_commit": {
    "id": "fd15b97fd4f3315091963507608723d4580a94f9",
    "author": "Sukamal Sarkar <sukamal.sarkar@gm.rkmvu.ac.in>",
    "committer": "cran-robot <csardi.gabor+cran@gmail.com>",
    "message": "version 0.1.0\n",
    "time": 1788963024
  },
  "_maintainer": {
    "name": "Sukamal Sarkar",
    "email": "sukamal.sarkar@gm.rkmvu.ac.in",
    "login": "sukamal99",
    "description": "",
    "uuid": 206156722,
    "orcid": "0000-0002-1438-1778"
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.1.0",
      "role": "Depends"
    },
    {
      "package": "ggplot2",
      "version": ">= 3.4.0",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "tools",
      "role": "Imports"
    },
    {
      "package": "grDevices",
      "role": "Imports"
    },
    {
      "package": "patchwork",
      "role": "Suggests"
    },
    {
      "package": "shiny",
      "role": "Suggests"
    },
    {
      "package": "DT",
      "role": "Suggests"
    },
    {
      "package": "bslib",
      "role": "Suggests"
    },
    {
      "package": "yaml",
      "role": "Suggests"
    },
    {
      "package": "readxl",
      "role": "Suggests"
    },
    {
      "package": "multcompView",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "spelling",
      "role": "Suggests"
    }
  ],
  "_owner": "cran",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-37",
      "n": 1
    }
  ],
  "_tags": [
    {
      "name": "0.1.0",
      "date": "2026-09-09"
    }
  ],
  "_stars": 0,
  "_contributors": [
    {
      "user": "sukamal99",
      "count": 1,
      "uuid": 206156722
    }
  ],
  "_userbio": {
    "uuid": 206156722,
    "type": "user",
    "name": "sukamal99",
    "followers": 0
  },
  "_downloads": {
    "count": 554,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/apsimeval"
  },
  "_searchresults": 0,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/apsimeval.html",
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/manual.pdf",
    "extra/NEWS.html",
    "extra/NEWS.txt"
  ],
  "_realowner": "sukamal99",
  "_cranurl": false,
  "_releases": [
    {
      "version": "0.1.0",
      "date": "2026-09-09"
    }
  ],
  "_exports": [
    "accent_col",
    "aggregate_sim",
    "apply_factors",
    "apply_project",
    "apsim_palette",
    "apsim_vars",
    "as_long",
    "build_figure",
    "cache_data",
    "check_levels",
    "check_variables",
    "cld_letters",
    "colour_mode",
    "combine_plots",
    "detect_factors",
    "diff_manifest",
    "exceedance",
    "factor_template",
    "get_pal",
    "gof",
    "heat_cols",
    "load_project",
    "map_obs",
    "new_project",
    "obs_sheets",
    "out_cache",
    "pair_obs",
    "panel_source",
    "panel_spec",
    "plot_anomaly",
    "plot_bar",
    "plot_box",
    "plot_density",
    "plot_exceedance",
    "plot_heatmap",
    "plot_one2one",
    "plot_resid",
    "plot_series",
    "plot_taylor",
    "plot_tornado",
    "plot_ts",
    "plot_variance",
    "preview_factors",
    "read_obs_raw",
    "read_out",
    "read_out_dir",
    "refresh",
    "render_panel",
    "run_app",
    "save_project",
    "save_pub",
    "scan_out",
    "sens_anova",
    "sens_oat",
    "sens_range",
    "set_colour_mode",
    "set_factors",
    "set_labels",
    "set_palette",
    "set_project_factors",
    "specs_from_list",
    "specs_to_list",
    "split_phase",
    "suggest_cutoff",
    "theme_apsim"
  ],
  "_help": [
    {
      "page": "accent_col",
      "title": "Accent colour for single-series plots, honouring the colour mode",
      "topics": [
        "accent_col"
      ]
    },
    {
      "page": "aggregate_sim",
      "title": "Collapse daily output to seasonal or annual values",
      "topics": [
        "aggregate_sim"
      ]
    },
    {
      "page": "apply_factors",
      "title": "Apply a project's stored factor mapping to freshly read output",
      "topics": [
        "apply_factors"
      ]
    },
    {
      "page": "apply_project",
      "title": "Push a project's labels and palette into the session",
      "topics": [
        "apply_project"
      ]
    },
    {
      "page": "apsim_palette",
      "title": "Colour-blind safe treatment palette",
      "topics": [
        "apsim_palette"
      ]
    },
    {
      "page": "apsim_vars",
      "title": "List variables and units without loading the data block",
      "topics": [
        "apsim_vars"
      ]
    },
    {
      "page": "as_long",
      "title": "Pivot wide APSIM output to long form",
      "topics": [
        "as_long"
      ]
    },
    {
      "page": "build_figure",
      "title": "Build a multi-panel figure from a list of panel specs",
      "topics": [
        "build_figure"
      ]
    },
    {
      "page": "cache_data",
      "title": "Combined data from a cache, with duplicate Titles resolved",
      "topics": [
        "cache_data"
      ]
    },
    {
      "page": "check_levels",
      "title": "Check observed treatment labels against the simulated ones",
      "topics": [
        "check_levels"
      ]
    },
    {
      "page": "check_variables",
      "title": "Check observed variable names against the simulated ones",
      "topics": [
        "check_variables"
      ]
    },
    {
      "page": "cld_letters",
      "title": "Compact letter display from a Tukey test",
      "topics": [
        "cld_letters"
      ]
    },
    {
      "page": "combine_plots",
      "title": "Combine panels with shared legend and A/B/C tags",
      "topics": [
        "combine_plots"
      ]
    },
    {
      "page": "detect_factors",
      "title": "Guess the delimiter and which name positions vary",
      "topics": [
        "detect_factors"
      ]
    },
    {
      "page": "diff_manifest",
      "title": "Compare two manifests",
      "topics": [
        "diff_manifest"
      ]
    },
    {
      "page": "exceedance",
      "title": "Empirical probability of exceedance",
      "topics": [
        "exceedance"
      ]
    },
    {
      "page": "factor_template",
      "title": "Editable mapping template for names with no usable structure",
      "topics": [
        "factor_template"
      ]
    },
    {
      "page": "get_pal",
      "title": "Colours for a set of levels, honouring the current colour mode",
      "topics": [
        "get_pal"
      ]
    },
    {
      "page": "gof",
      "title": "Goodness-of-fit statistics for observed vs simulated pairs",
      "topics": [
        "gof"
      ]
    },
    {
      "page": "heat_cols",
      "title": "Sequential and diverging fills for heatmaps, honouring the colour mode",
      "topics": [
        "heat_cols"
      ]
    },
    {
      "page": "load_project",
      "title": "Read a project back",
      "topics": [
        "load_project"
      ]
    },
    {
      "page": "map_obs",
      "title": "Apply a confirmed column mapping and pivot to long form",
      "topics": [
        "map_obs"
      ]
    },
    {
      "page": "new_project",
      "title": "Project configuration",
      "topics": [
        "new_project"
      ]
    },
    {
      "page": "obs_sheets",
      "title": "Sheet names in a workbook, for the GUI's sheet picker",
      "topics": [
        "obs_sheets"
      ]
    },
    {
      "page": "out_cache",
      "title": "Incremental cache over a directory of .out files",
      "topics": [
        "out_cache"
      ]
    },
    {
      "page": "pair_obs",
      "title": "Pair observed values to simulated output with a date tolerance",
      "topics": [
        "pair_obs"
      ]
    },
    {
      "page": "panel_source",
      "title": "Which data source a panel type needs",
      "topics": [
        "panel_source"
      ]
    },
    {
      "page": "panel_spec",
      "title": "Describe one panel of a multi-panel figure",
      "topics": [
        "panel_spec"
      ]
    },
    {
      "page": "plot_anomaly",
      "title": "Anomaly of each year against the treatment mean",
      "topics": [
        "plot_anomaly"
      ]
    },
    {
      "page": "plot_bar",
      "title": "Treatment means with error bars and significance letters",
      "topics": [
        "plot_bar"
      ]
    },
    {
      "page": "plot_box",
      "title": "Distribution of a simulated variable by treatment",
      "topics": [
        "plot_box"
      ]
    },
    {
      "page": "plot_density",
      "title": "Distribution density by treatment",
      "topics": [
        "plot_density"
      ]
    },
    {
      "page": "plot_exceedance",
      "title": "Probability of exceedance curve",
      "topics": [
        "plot_exceedance"
      ]
    },
    {
      "page": "plot_heatmap",
      "title": "Treatment x scenario heatmap",
      "topics": [
        "plot_heatmap"
      ]
    },
    {
      "page": "plot_one2one",
      "title": "Observed vs simulated 1:1 plot",
      "topics": [
        "plot_one2one"
      ]
    },
    {
      "page": "plot_resid",
      "title": "Residual plot",
      "topics": [
        "plot_resid"
      ]
    },
    {
      "page": "plot_series",
      "title": "Multi-variable, multi-treatment time series",
      "topics": [
        "plot_series"
      ]
    },
    {
      "page": "plot_taylor",
      "title": "Taylor diagram",
      "topics": [
        "plot_taylor"
      ]
    },
    {
      "page": "plot_tornado",
      "title": "Tornado plot of one-at-a-time or range sensitivity",
      "topics": [
        "plot_tornado"
      ]
    },
    {
      "page": "plot_ts",
      "title": "Simulated time series with observed points overlaid",
      "topics": [
        "plot_ts"
      ]
    },
    {
      "page": "plot_variance",
      "title": "Variance decomposition from sens_anova()",
      "topics": [
        "plot_variance"
      ]
    },
    {
      "page": "preview_factors",
      "title": "Preview a factor mapping before applying it",
      "topics": [
        "preview_factors"
      ]
    },
    {
      "page": "read_obs_raw",
      "title": "Read observed data from Excel or CSV",
      "topics": [
        "read_obs_raw"
      ]
    },
    {
      "page": "read_out",
      "title": "Read an APSIM Classic .out file",
      "topics": [
        "read_out"
      ]
    },
    {
      "page": "read_out_dir",
      "title": "Read every .out file in a directory",
      "topics": [
        "read_out_dir"
      ]
    },
    {
      "page": "refresh",
      "title": "Re-scan and re-parse only changed files",
      "topics": [
        "refresh"
      ]
    },
    {
      "page": "render_panel",
      "title": "Render one panel from its spec",
      "topics": [
        "render_panel"
      ]
    },
    {
      "page": "run_app",
      "title": "Launch the apsimeval GUI",
      "topics": [
        "run_app"
      ]
    },
    {
      "page": "save_project",
      "title": "Write a project to disk",
      "topics": [
        "save_project"
      ]
    },
    {
      "page": "save_pub",
      "title": "Save at journal column widths and print resolution",
      "topics": [
        "save_pub"
      ]
    },
    {
      "page": "scan_out",
      "title": "Manifest of .out files in a directory",
      "topics": [
        "scan_out"
      ]
    },
    {
      "page": "sens_anova",
      "title": "Variance-based sensitivity from a factorial simulation set",
      "topics": [
        "sens_anova"
      ]
    },
    {
      "page": "sens_oat",
      "title": "One-at-a-time sensitivity around a baseline run",
      "topics": [
        "sens_oat"
      ]
    },
    {
      "page": "sens_range",
      "title": "Range of output spanned by each factor",
      "topics": [
        "sens_range"
      ]
    },
    {
      "page": "set_colour_mode",
      "title": "Colour mode for every figure",
      "topics": [
        "colour_mode",
        "set_colour_mode"
      ]
    },
    {
      "page": "set_factors",
      "title": "Split simulation names into treatment factor columns",
      "topics": [
        "set_factors"
      ]
    },
    {
      "page": "set_palette",
      "title": "Fix treatment colours, display labels and units for the whole session",
      "topics": [
        "set_labels",
        "set_palette"
      ]
    },
    {
      "page": "set_project_factors",
      "title": "Record the current mapping into a project",
      "topics": [
        "set_project_factors"
      ]
    },
    {
      "page": "specs_to_list",
      "title": "Turn panel specs into plain lists for the project file, and back",
      "topics": [
        "specs_from_list",
        "specs_to_list"
      ]
    },
    {
      "page": "split_phase",
      "title": "Split paired data into calibration and validation subsets",
      "topics": [
        "split_phase"
      ]
    },
    {
      "page": "suggest_cutoff",
      "title": "Suggest a calibration/validation cutoff date",
      "topics": [
        "suggest_cutoff"
      ]
    },
    {
      "page": "theme_apsim",
      "title": "Publication theme for APSIM figures",
      "topics": [
        "theme_apsim"
      ]
    }
  ],
  "_rundeps": [
    "cli",
    "cpp11",
    "farver",
    "ggplot2",
    "glue",
    "gtable",
    "isoband",
    "labeling",
    "lifecycle",
    "R6",
    "RColorBrewer",
    "rlang",
    "S7",
    "scales",
    "vctrs",
    "viridisLite",
    "withr"
  ],
  "_vignettes": [
    {
      "source": "apsimeval.Rmd",
      "filename": "apsimeval.html",
      "title": "Getting started with apsimeval",
      "engine": "knitr::rmarkdown",
      "headings": [
        "The interface",
        "Reading output",
        "Treatments from simulation names",
        "Calibration and validation",
        "Scenarios and sensitivity",
        "Figures",
        "Projects",
        "Replicated observed data",
        "Timeline graphs",
        "Observed data on a subset of the variables"
      ],
      "created": "2026-09-09 14:10:24",
      "modified": "2026-09-09 14:10:24",
      "commits": 1
    }
  ],
  "_score": 2,
  "_indexed": true,
  "_nocasepkg": "apsimeval",
  "_universes": [
    "sukamal99"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.1.0",
      "date": "2026-10-11T15:17:45.000Z",
      "distro": "resolute",
      "commit": "fd15b97fd4f3315091963507608723d4580a94f9",
      "fileid": "https://r2.ropensci.org/c867bd0f435da2c7794b6d103f4552df47cc16a7e8b95d3ddd78969b70b94c4f",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/sukamal99/actions/runs/38150224656"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "0.1.0",
      "date": "2026-10-11T15:17:18.000Z",
      "distro": "resolute",
      "commit": "fd15b97fd4f3315091963507608723d4580a94f9",
      "fileid": "https://r2.ropensci.org/a9201de2ffc0e6631e0bf8f5a05eb85f8143a683833343c9ec86e85d2bef6ca0",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/sukamal99/actions/runs/38150224656"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.1.0",
      "date": "2026-10-11T15:18:10.000Z",
      "commit": "fd15b97fd4f3315091963507608723d4580a94f9",
      "fileid": "https://r2.ropensci.org/57ac6d5694264998762230094ba2d6bd02d76ec827f1dd03728fd1024fa57f81",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/sukamal99/actions/runs/38150224656"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "0.1.0",
      "date": "2026-10-11T15:19:22.000Z",
      "commit": "fd15b97fd4f3315091963507608723d4580a94f9",
      "fileid": "https://r2.ropensci.org/e2db3a4ff8caab86707e0cf180fd45c75285fcb3c0281d4fe6825ba76df1f2e8",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/sukamal99/actions/runs/38150224656"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.1.0",
      "date": "2026-10-11T15:17:01.000Z",
      "commit": "fd15b97fd4f3315091963507608723d4580a94f9",
      "fileid": "https://r2.ropensci.org/4d54a50afa7a01da65b760590ecf0c94e0b52be950c918526977a3746f099d31",
      "status": "success",
      "buildurl": "https://github.com/r-universe/sukamal99/actions/runs/38150224656"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.1.0",
      "date": "2026-10-11T15:16:12.000Z",
      "commit": "fd15b97fd4f3315091963507608723d4580a94f9",
      "fileid": "https://r2.ropensci.org/13460f6b682e983451b06dedd8f4b5d5d91749eb9022fd812f3973083df69e0f",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/sukamal99/actions/runs/38150224656"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.1.0",
      "date": "2026-10-11T15:16:14.000Z",
      "commit": "fd15b97fd4f3315091963507608723d4580a94f9",
      "fileid": "https://r2.ropensci.org/16987881b262970fe5cacda2a864244b42b1d1b52fa889f48fb37ad2d5b2c228",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/sukamal99/actions/runs/38150224656"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "0.1.0",
      "date": "2026-10-11T15:16:20.000Z",
      "commit": "fd15b97fd4f3315091963507608723d4580a94f9",
      "fileid": "https://r2.ropensci.org/25409800ad773cdf2127c724cd7a466bfcd04b3f5878ac43105254950fe0c6aa",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/sukamal99/actions/runs/38150224656"
    }
  ]
}