{"id":25020722,"url":"https://github.com/km3net/nuflux.jl","last_synced_at":"2026-03-04T09:31:03.956Z","repository":{"id":70553793,"uuid":"396563897","full_name":"KM3NeT/NuFlux.jl","owner":"KM3NeT","description":"Neutrino flux table parser","archived":false,"fork":false,"pushed_at":"2025-05-14T13:57:44.000Z","size":1990,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-10T04:09:13.766Z","etag":null,"topics":["flux","julia","neutrino"],"latest_commit_sha":null,"homepage":"https://km3net.github.io/NuFlux.jl/","language":"Julia","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/KM3NeT.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-08-16T01:28:41.000Z","updated_at":"2025-05-14T13:57:45.000Z","dependencies_parsed_at":"2025-04-28T14:33:15.780Z","dependency_job_id":"a8c60e60-0051-4a43-a8cf-21d8e94532c4","html_url":"https://github.com/KM3NeT/NuFlux.jl","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/KM3NeT/NuFlux.jl","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KM3NeT%2FNuFlux.jl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KM3NeT%2FNuFlux.jl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KM3NeT%2FNuFlux.jl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KM3NeT%2FNuFlux.jl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KM3NeT","download_url":"https://codeload.github.com/KM3NeT/NuFlux.jl/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KM3NeT%2FNuFlux.jl/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30077064,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T08:01:56.766Z","status":"ssl_error","status_checked_at":"2026-03-04T08:00:42.919Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["flux","julia","neutrino"],"created_at":"2025-02-05T12:17:23.309Z","updated_at":"2026-03-04T09:31:03.894Z","avatar_url":"https://github.com/KM3NeT.png","language":"Julia","funding_links":[],"categories":[],"sub_categories":[],"readme":"![](https://git.km3net.de/simulation/NuFlux.jl/-/raw/main/docs/src/assets/nuflux.svg)\n\n\n[![Stable](https://img.shields.io/badge/docs-stable-blue.svg)](https://simulation.pages.km3net.de/NuFlux.jl/stable)\n[![Dev](https://img.shields.io/badge/docs-dev-blue.svg)](https://simulation.pages.km3net.de/NuFlux.jl/dev)\n[![pipeline status](https://git.km3net.de/simulation/NuFlux.jl/badges/main/pipeline.svg)](https://git.km3net.de/simulation/NuFlux.jl/-/commits/main)\n[![coverage report](https://git.km3net.de/simulation/NuFlux.jl/badges/main/coverage.svg)](https://git.km3net.de/simulation/NuFlux.jl/-/commits/main)\n\n\n# NuFlux.jl\n\n**NuFlux.jl** is a package for providing neutrino flux related functionalities \nwith focus on parsing the flux tables used in [\"Atmospheric neutrino flux calculation using the NRLMSISE-00 atmospheric model\" (10.1103/PhysRevD.92.023004)](https://link.aps.org/doi/10.1103/PhysRevD.92.023004) \nwhich are provided under [http://www.icrr.u-tokyo.ac.jp/~mhonda/](http://www.icrr.u-tokyo.ac.jp/~mhonda/).\n\n## Installation\n\nTo install `NuFlux.jl`, clone this repo. Then open the Julia REPL as\n```shell\njulia --project=NuFlux.jl\n```\nNext step is to run the following command in the Julia REPL:\n\n```julia\nusing Pkg\nPkg.instantiate()\n```\n\nThen you are good to go to use `NuFlux.jl`\n\n\n## Usage\nThe function `NuFlux.readfluxfile(my/flux/file)` will read the Honda flux file of any site and return a dictionary where each key is the the table for a different neutrino type.\n\nThe main function which extracts the flux value is `NuFlux.flux(flux_of_specific_neutrino_type, energy, cosθ, ϕ; interpol=true)`\n\nThis function extracts the flux at a given energy, zenith direction cosθ, and azimuth direction ϕ. If the argument of the azimuth direction is missing it will take the mean of the flux values, if the value of the zenith direction is missing another mean will be computed.\nThe function allows to compute an interpolation from the table using the boolean of `interpol`.\n\nThe `flux` function allows to define which kind of interpolation to be used with the argument `interpol_method` which can be `\"linear\", \"quadratic\", \"cubic\"`, the default method is `\"cubic\"`. \nAdditionally, the argument `interp_logflux` is a boolean where if `true` it will interpolate using the $\\log_10$ values of the flux to allow for a smoother interpolation, the default value is `false`.\n\nIt is recommended to use the combination of `interpol_method=\"linear\",interp_logflux=true` as this is shown to better approximate the actual behavior of the Honda fluxes.\n\n\n## Example\n\nHere’s a simple example to get started with `NuFlux.jl`. This example demonstrates how to load a flux table and calculate the flux for a given energy, zenith angle, and azimuth angle.\n\n```julia\nusing NuFlux\n\n# Load a flux table from a file, here we will use one of the default fluxes in the package, but you can use your own\nNUFLUX_PATH = split(Base.pathof(NuFlux), \"src\")[1]\nFLUX_DATA_DIR = joinpath(NUFLUX_PATH, \"data\")\nflux_dict = NuFlux.readfluxfile(joinpath(FLUX_DATA_DIR, \"frj-ally-20-12-solmin.d\"))\n\n# Select a specific flux table (e.g., for muon neutrinos)\nmuon_neutrino_flux = flux_dict[NuFlux.NUMU_PDGID]  # We can use NuFlux defined variables which are just instances of particles from Corpuscles.jl\n\n# Calculate the flux for a given energy, zenith angle, and azimuth angle\nenergy = 10.0  # Energy in GeV\ncosθ = 0.5     # Cosine of the zenith angle\nϕ = 0.0        # Azimuth angle in radians\n\nflux_value = NuFlux.flux(muon_neutrino_flux, energy, cosθ, ϕ; interpol=true)\nprintln(\"Flux value: \", flux_value)\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkm3net%2Fnuflux.jl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkm3net%2Fnuflux.jl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkm3net%2Fnuflux.jl/lists"}