{
  "_id": "6a6238da35834fefe99eca8d",
  "Package": "catmodeling",
  "Type": "Package",
  "Title": "Catastrophe Model Simulation and Adjustment",
  "Version": "0.0.1",
  "Authors@R": "person(given=\"Stephen\",\nfamily=\"Jewson\",\nemail= \"stephen.jewson@gmail.com\",\nrole = c(\"aut\", \"cre\"),\ncomment = c(ORCID = \"0000-0002-6011-6262\"))",
  "Maintainer": "Stephen Jewson <stephen.jewson@gmail.com>",
  "Description": "Manipulation of catastrophe model outputs, including tasks\nsuch as simulating year loss tables (YLTs) from event loss\ntables (ELTs), adjusting the frequencies of events in YLTs to\ncreate new YLTs, applying catastrophe exceedance of loss\ncontracts (catXL), applying hours clauses, and calculating\ndiagnostics from ELTs and YLTs, such as average annual loss and\nexceedance probability curves. Frequency adjustment routines\nare based on the paper \"A new simulation algorithm for more\nprecise estimates of change in catastrophe risk models, with\napplication to hurricanes and climate change\", Jewson, S.\n(2023); <doi:10.1007/s00477-023-02409-0>. Uses the compiled\nlanguage 'Rust' in places and so requires a Rust compiler to be\ninstalled, or a binary installation.",
  "License": "AGPL-3",
  "BugReports": "https://github.com/stephenjewson/catmodeling/issues",
  "URL": "https://www.catmodeling.info",
  "Encoding": "UTF-8",
  "RoxygenNote": "7.3.3",
  "Config/rextendr/version": "0.5.0",
  "SystemRequirements": "Cargo (Rust's package manager), rustc >= 1.65.0, xz",
  "NeedsCompilation": "yes",
  "Packaged": {
    "Date": "2026-07-23 15:47:59 UTC",
    "User": "root"
  },
  "Author": "Stephen Jewson [aut, cre] (ORCID:\n<https://orcid.org/0000-0002-6011-6262>)",
  "Config/pak/sysreqs": "xz-utils libclang-dev",
  "Repository": "https://cran.r-universe.dev",
  "Date/Publication": "2026-07-23 12:00:02 UTC",
  "RemoteUrl": "https://github.com/cran/catmodeling",
  "RemoteRef": "HEAD",
  "RemoteSha": "e2621c6c8479b31f9f39002ca4cd95168053954c",
  "_user": "cran",
  "_type": "src",
  "_file": "catmodeling_0.0.1.tar.gz",
  "_fileid": "https://r2.ropensci.org/2aa351e30d4fa266ab418d18e03dea38fdd762449d4c9875ead4129b8400bb45",
  "_filesize": 855053,
  "_sha256": "2aa351e30d4fa266ab418d18e03dea38fdd762449d4c9875ead4129b8400bb45",
  "_expires": "2026-10-31T15:52:56.000Z",
  "_created": "2026-07-23T15:47:59.000Z",
  "_published": "2026-07-23T15:52:58.703Z",
  "_jobs": [
    {
      "job": 89257703977,
      "time": 143,
      "config": "linux-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8569823234"
    },
    {
      "job": 89257703981,
      "time": 158,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8569830833"
    },
    {
      "job": 89257704228,
      "time": 144,
      "config": "linux-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8569823257"
    },
    {
      "job": 89257703948,
      "time": 158,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8569831018"
    },
    {
      "job": 89256822046,
      "time": 196,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8569746219"
    },
    {
      "job": 89257704058,
      "time": 167,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "FAIL",
      "artifact": ""
    },
    {
      "job": 89257703966,
      "time": 184,
      "config": "windows-devel-arm64",
      "r": "4.7.0",
      "check": "FAIL",
      "artifact": ""
    },
    {
      "job": 89257704033,
      "time": 235,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8569870852"
    }
  ],
  "_host": "GitHub-Actions",
  "_buildurl": "https://github.com/r-universe/cran/actions/runs/30021958070",
  "_status": "success",
  "_upstream": "https://github.com/cran/catmodeling",
  "_commit": {
    "id": "e2621c6c8479b31f9f39002ca4cd95168053954c",
    "author": "Stephen Jewson <stephen.jewson@gmail.com>",
    "committer": "cran-robot <csardi.gabor+cran@gmail.com>",
    "message": "version 0.0.1\n",
    "time": 1784808002
  },
  "_maintainer": {
    "name": "Stephen Jewson",
    "email": "stephen.jewson@gmail.com",
    "login": "stephenjewson",
    "linkedin": "in/steve-jewson-phd-052bb417",
    "description": "",
    "uuid": 93211466,
    "orcid": "0000-0002-6011-6262"
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.2",
      "role": "Depends"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "dplyr",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "pracma",
      "role": "Imports"
    },
    {
      "package": "geosphere",
      "role": "Imports"
    }
  ],
  "_owner": "cran",
  "_selfowned": false,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-30",
      "n": 1
    }
  ],
  "_tags": [
    {
      "name": "0.0.1",
      "date": "2026-07-23"
    }
  ],
  "_stars": 0,
  "_contributors": [
    {
      "user": "stephenjewson",
      "count": 1,
      "uuid": 93211466
    }
  ],
  "_userbio": {
    "uuid": 6899542,
    "type": "organization",
    "name": "cran",
    "followers": 623,
    "description": "Unofficial read-only mirror of all CRAN R packages"
  },
  "_downloads": {
    "count": 0,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/catmodeling"
  },
  "_devurl": "https://github.com/stephenjewson/catmodeling",
  "_cargo": true,
  "_topics": [
    "rust",
    "cargo"
  ],
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/catmodeling.html",
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "manual.pdf"
  ],
  "_cranurl": false,
  "_releases": [
    {
      "version": "0.0.1",
      "date": "2026-07-23"
    }
  ],
  "_exports": [
    "bootstrap_ep_uncertainty",
    "calc_beta_params",
    "catxl",
    "compare_distance_routines",
    "defineregion",
    "elt_add_nahu_cat",
    "elt_collapse_regions",
    "elt_diagnostics_aaeaal",
    "elt_diagnostics_aaeaal_by_cat",
    "elt_diagnostics_aaeaal_with_adj",
    "elt_diagnostics_epcurves",
    "elt_diagnostics_epcurves_with_adj",
    "elt_rate_adjustments_cat_2_event",
    "elt_rate_adjustments_regcat_2_event",
    "filetest",
    "hours_clause",
    "hours_clause_apply_part2",
    "hours_clause_wrapper_ylt",
    "hours_clause_write_settings",
    "input_checks",
    "make_2_ep_by_sorting",
    "make_elt",
    "make_ep_by_sorting",
    "make_ylt",
    "nahu_define_gmst_scenarios",
    "nahu_define_k2020_zenodo_landfall_adj",
    "nahu_k2020_rates_interpolation",
    "nahu_write_settings",
    "nahu_ylt_surgery",
    "template",
    "whatreg",
    "writeNresults2csv",
    "ws2catf",
    "ylt_add_cat_2_longylt",
    "ylt_add_region_2_longylt",
    "ylt_check_for_2_events_on_same_day",
    "ylt_check_for_same_events_in_one_year",
    "ylt_diagnostics_aaeaal",
    "ylt_diagnostics_aaeaal_by_cat_change_printf",
    "ylt_diagnostics_aaeaal_by_cat_printf",
    "ylt_diagnostics_aaeaal_by_catf",
    "ylt_diagnostics_aaeaal_change_printf",
    "ylt_diagnostics_aaeaal_printf",
    "ylt_diagnostics_loss_thresholds",
    "ylt_diagnostics_nchanges",
    "ylt_long2short",
    "ylt_rate_adjustments_cat_2_row",
    "ylt_rate_adjustments_catreg_2_row",
    "ylt_write2results2csv",
    "yltsim",
    "yltsim_inc",
    "yltsurgery",
    "yltsurgery_groups"
  ],
  "_help": [
    {
      "page": "addvectors",
      "title": "Adds two vectors element-wise up to length n.",
      "topics": [
        "addvectors"
      ]
    },
    {
      "page": "bootstrap_ep_uncertainty",
      "title": "Bootstrap EP uncertainty",
      "topics": [
        "bootstrap_ep_uncertainty"
      ]
    },
    {
      "page": "calc_beta_params",
      "title": "Calculate Beta Distribution Parameters for a List of Events",
      "topics": [
        "calc_beta_params"
      ]
    },
    {
      "page": "catxl",
      "title": "Applies CatXL Layers to a YLT",
      "topics": [
        "catxl"
      ]
    },
    {
      "page": "compare_distance_routines",
      "title": "Function for testing that R and Rust give the same distances between events",
      "topics": [
        "compare_distance_routines"
      ]
    },
    {
      "page": "defineregion",
      "title": "Defines the 19 Global Regions from My BAMS Paper",
      "topics": [
        "defineregion"
      ]
    },
    {
      "page": "elt_add_nahu_cat",
      "title": "Adds a cat column to an elt, calculated from wind speed.",
      "topics": [
        "elt_add_nahu_cat"
      ]
    },
    {
      "page": "elt_collapse_regions",
      "title": "For an ELT with multiple occurrences of each event, collapses to 1 per event",
      "topics": [
        "elt_collapse_regions"
      ]
    },
    {
      "page": "elt_diagnostics_aaeaal",
      "title": "Calculates AAE and AAL from an ELT",
      "topics": [
        "elt_diagnostics_aaeaal"
      ]
    },
    {
      "page": "elt_diagnostics_aaeaal_by_cat",
      "title": "Calculates AAE and AAL from an ELT, and by cat",
      "topics": [
        "elt_diagnostics_aaeaal_by_cat"
      ]
    },
    {
      "page": "elt_diagnostics_aaeaal_with_adj",
      "title": "Calculates AAE and AAL from an ELT",
      "topics": [
        "elt_diagnostics_aaeaal_with_adj"
      ]
    },
    {
      "page": "elt_diagnostics_epcurves",
      "title": "Converts ELT rates into plotting positions for CEP, EEF and OEP",
      "topics": [
        "elt_diagnostics_epcurves"
      ]
    },
    {
      "page": "elt_diagnostics_epcurves_with_adj",
      "title": "Converts ELT rates into plotting positions for CEP, EEF and OEP, with rate adjustments",
      "topics": [
        "elt_diagnostics_epcurves_with_adj"
      ]
    },
    {
      "page": "elt_rate_adjustments_cat_2_event",
      "title": "Converts rate adjustments from cat to event, for events in an ELT",
      "topics": [
        "elt_rate_adjustments_cat_2_event"
      ]
    },
    {
      "page": "elt_rate_adjustments_regcat_2_event",
      "title": "Converts rate adjustments from region and cat to event, for events in an ELT",
      "topics": [
        "elt_rate_adjustments_regcat_2_event"
      ]
    },
    {
      "page": "filetest",
      "title": "Testing using files",
      "topics": [
        "filetest"
      ]
    },
    {
      "page": "hours_clause",
      "title": "Applies an hours clause to a long YLT, and returns a YLT",
      "topics": [
        "hours_clause"
      ]
    },
    {
      "page": "hours_clause_apply_part2",
      "title": "Function that loops through events in one year and applies an hours clause",
      "topics": [
        "hours_clause_apply_part2"
      ]
    },
    {
      "page": "hours_clause_wrapper_ylt",
      "title": "Applies an hours clause to a long YLT stored in csv file, and returns the adjusted YLT in memory and to a csv file",
      "topics": [
        "hours_clause_wrapper_ylt"
      ]
    },
    {
      "page": "hours_clause_write_settings",
      "title": "When using 'hours_clause_wrapper', writes out the settings to a file.",
      "topics": [
        "hours_clause_write_settings"
      ]
    },
    {
      "page": "imports",
      "title": "Imports",
      "topics": [
        "imports"
      ]
    },
    {
      "page": "input_checks",
      "title": "Checks the columns in an input data frame.",
      "topics": [
        "input_checks"
      ]
    },
    {
      "page": "make_2_ep_by_sorting",
      "title": "Make 2 EP curves by sorting losses",
      "topics": [
        "make_2_ep_by_sorting"
      ]
    },
    {
      "page": "make_elt",
      "title": "Make an ELT in memory",
      "topics": [
        "make_elt"
      ]
    },
    {
      "page": "make_ep_by_sorting",
      "title": "Make an EP curve by sorting losses",
      "topics": [
        "make_ep_by_sorting"
      ]
    },
    {
      "page": "make_ylt",
      "title": "Make an YLT in memory",
      "topics": [
        "make_ylt"
      ]
    },
    {
      "page": "nahu_define_gmst_scenarios",
      "title": "Defines 4 GMST Scenarios",
      "topics": [
        "nahu_define_gmst_scenarios"
      ]
    },
    {
      "page": "nahu_define_k2020_zenodo_landfall_adj",
      "title": "Define Jewson landfall rates Scenarios from the BAMS paper",
      "topics": [
        "nahu_define_k2020_zenodo_landfall_adj"
      ]
    },
    {
      "page": "nahu_k2020_rates_interpolation",
      "title": "Interpolates rates in time",
      "topics": [
        "nahu_k2020_rates_interpolation"
      ]
    },
    {
      "page": "nahu_write_settings",
      "title": "Writes out settings to file for 'nahu_ylt_surgery'",
      "topics": [
        "nahu_write_settings"
      ]
    },
    {
      "page": "nahu_ylt_surgery",
      "title": "An example workflow for applying 'ylt_surgery_groups' or 'ylt_surgery_groups' to NAHU.",
      "topics": [
        "nahu_ylt_surgery"
      ]
    },
    {
      "page": "rust_dist_haversine",
      "title": "Function to calculate the Haversine distance between two points. This matches the functionality of geosphere::distHaversine in R.",
      "topics": [
        "rust_dist_haversine"
      ]
    },
    {
      "page": "rust_hello_world",
      "title": "Return string '\"Hello world!\"' to R. Just a test.",
      "topics": [
        "rust_hello_world"
      ]
    },
    {
      "page": "rust_hours_clause_apply_part2",
      "title": "Hours clause function For a given start event, calculates all possible hours clauses, returns new losses AND a counter",
      "topics": [
        "rust_hours_clause_apply_part2"
      ]
    },
    {
      "page": "rust_square",
      "title": "Square an integer. Just an example.",
      "topics": [
        "rust_square"
      ]
    },
    {
      "page": "stopi",
      "title": "Stops code intentionally, with message that says that",
      "topics": [
        "stopi"
      ]
    },
    {
      "page": "template",
      "title": "A template for R code",
      "topics": [
        "template"
      ]
    },
    {
      "page": "whatreg",
      "title": "Converts US state and country region abbreviations into numbers from 1 to 7.",
      "topics": [
        "whatreg"
      ]
    },
    {
      "page": "writeNresults2csv",
      "title": "Writes results from N YLTs to csv format.",
      "topics": [
        "writeNresults2csv"
      ]
    },
    {
      "page": "ws2catf",
      "title": "Convert windspeed in knots into a generalized version of the SSHWS category.",
      "topics": [
        "ws2catf"
      ]
    },
    {
      "page": "ylt_add_cat_2_longylt",
      "title": "Adds a cat column to a long ylt, based on windspeed",
      "topics": [
        "ylt_add_cat_2_longylt"
      ]
    },
    {
      "page": "ylt_add_region_2_longylt",
      "title": "Adds a region column to a longylt, based on the lat-lons already in the longylt",
      "topics": [
        "ylt_add_region_2_longylt"
      ]
    },
    {
      "page": "ylt_check_for_2_events_on_same_day",
      "title": "Checks a YLT for two events on the same day",
      "topics": [
        "ylt_check_for_2_events_on_same_day"
      ]
    },
    {
      "page": "ylt_check_for_same_events_in_one_year",
      "title": "Checks a YLT for the same event occurring twice in one year",
      "topics": [
        "ylt_check_for_same_events_in_one_year"
      ]
    },
    {
      "page": "ylt_diagnostics_aaeaal",
      "title": "Long YLT Diagnostics",
      "topics": [
        "ylt_diagnostics_aaeaal"
      ]
    },
    {
      "page": "ylt_diagnostics_aaeaal_by_cat_change_printf",
      "title": "Prints changes in AAE and AAL from a two YLTs to the screen",
      "topics": [
        "ylt_diagnostics_aaeaal_by_cat_change_printf"
      ]
    },
    {
      "page": "ylt_diagnostics_aaeaal_by_cat_printf",
      "title": "Prints AAE and AAL from a YLT to the screen",
      "topics": [
        "ylt_diagnostics_aaeaal_by_cat_printf"
      ]
    },
    {
      "page": "ylt_diagnostics_aaeaal_by_catf",
      "title": "Calculates YLT AAE and AAL by Cat",
      "topics": [
        "ylt_diagnostics_aaeaal_by_catf"
      ]
    },
    {
      "page": "ylt_diagnostics_aaeaal_change_printf",
      "title": "Prints changes in AAE and AAL from a two longylts to the screen",
      "topics": [
        "ylt_diagnostics_aaeaal_change_printf"
      ]
    },
    {
      "page": "ylt_diagnostics_aaeaal_printf",
      "title": "Prints AAE and AAL from a Long YLT to the screen",
      "topics": [
        "ylt_diagnostics_aaeaal_printf"
      ]
    },
    {
      "page": "ylt_diagnostics_loss_thresholds",
      "title": "Counts number of events per year above loss thresholds",
      "topics": [
        "ylt_diagnostics_loss_thresholds"
      ]
    },
    {
      "page": "ylt_diagnostics_nchanges",
      "title": "Sees how many years have changed between a YLT and an adjusted YLT",
      "topics": [
        "ylt_diagnostics_nchanges"
      ]
    },
    {
      "page": "ylt_long2short",
      "title": "Calculate a Short YLT from a Long YLT",
      "topics": [
        "ylt_long2short"
      ]
    },
    {
      "page": "ylt_rate_adjustments_cat_2_row",
      "title": "Makes rates adjustments by event, for events in a YLT",
      "topics": [
        "ylt_rate_adjustments_cat_2_row"
      ]
    },
    {
      "page": "ylt_rate_adjustments_catreg_2_row",
      "title": "Makes rates adjustments by event, for events in a YLT",
      "topics": [
        "ylt_rate_adjustments_catreg_2_row"
      ]
    },
    {
      "page": "ylt_write2results2csv",
      "title": "Writes results from 2 YLTs to csv format.",
      "topics": [
        "ylt_write2results2csv"
      ]
    },
    {
      "page": "yltsim",
      "title": "Simulates a long YLT from a Poisson ELT",
      "topics": [
        "yltsim"
      ]
    },
    {
      "page": "yltsim_inc",
      "title": "Simulates an Adjusted long YLT using Incremental Simulation, based on an input ELT and long YLT",
      "topics": [
        "yltsim_inc"
      ]
    },
    {
      "page": "yltsurgery",
      "title": "Adjusts a long YLT to make a new long YLT using the surgery algorithm",
      "topics": [
        "yltsurgery"
      ]
    },
    {
      "page": "yltsurgery_groups",
      "title": "Adjusts a long YLT to make a new long YLT using the grouped surgery algorithm",
      "topics": [
        "yltsurgery_groups"
      ]
    }
  ],
  "_rundeps": [
    "cli",
    "dplyr",
    "generics",
    "geosphere",
    "glue",
    "lifecycle",
    "magrittr",
    "pillar",
    "pkgconfig",
    "pracma",
    "R6",
    "Rcpp",
    "rlang",
    "tibble",
    "tidyselect",
    "utf8",
    "vctrs",
    "withr"
  ],
  "_score": 1,
  "_indexed": true,
  "_nocasepkg": "catmodeling",
  "_universes": [
    "cran",
    "stephenjewson"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.0.1",
      "date": "2026-07-23T15:50:21.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "e2621c6c8479b31f9f39002ca4cd95168053954c",
      "fileid": "https://r2.ropensci.org/cfb32ba234abd0ce8e638523b7ebd9b424d53d416b7a7ef1a9a650a2183e8318",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/30021958070"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.0.1",
      "date": "2026-07-23T15:50:32.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "e2621c6c8479b31f9f39002ca4cd95168053954c",
      "fileid": "https://r2.ropensci.org/a7fb62ba7914e1fb0d58e63c2d41a5918528ad543e42fd47630678b0da96d373",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/30021958070"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "0.0.1",
      "date": "2026-07-23T15:50:20.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "e2621c6c8479b31f9f39002ca4cd95168053954c",
      "fileid": "https://r2.ropensci.org/b4aa9ebf8061b9904e7661874b97357f37d065874a324b94243436829aa24dc3",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/30021958070"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "0.0.1",
      "date": "2026-07-23T15:50:32.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "e2621c6c8479b31f9f39002ca4cd95168053954c",
      "fileid": "https://r2.ropensci.org/384e010b46ab6a0c4cc9e8d9d238b7351419eec5524b73e674a7031af4c57698",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/30021958070"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.0.1",
      "date": "2026-07-23T15:50:48.000Z",
      "arch": "x86_64",
      "commit": "e2621c6c8479b31f9f39002ca4cd95168053954c",
      "fileid": "https://r2.ropensci.org/5455a7a69e5ab2f493036658f6fba94f1a1c7704aa42aacd1836fb6fcb401a40",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/30021958070"
    }
  ]
}