Skip to content

Commit efc6317

Browse files
piotrstenkePiotr Stenke
and
Piotr Stenke
authored
Add radiation exposure (#1348)
Added radiation exposure along with two units - Coulomb per kilogram (SI-based) and Roentgen. Coulombs per kilogram come with four prefixes (pico, nano, micro and milli), which is two less (with kilo and mega missing) than the definition of Coulomb itself in ElectricCharge.json. This is due to the fact that C/kg is quite large and there are not many practical usecases for anything beyond than that. Roentgens come with two prefixes (milli and micro). Most often than not, Roentgens are used 'as is', without prefixes, e.g. in case of the famous 20000R/h during Chernobyl disaster, but in some sources milli and micro are also used (example articles below). https://www.epa.gov/radnet/about-exposure-and-dose-rates https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7155967/ Wikipedia pages: https://en.wikipedia.org/wiki/Radiation_exposure https://en.wikipedia.org/wiki/Roentgen_(unit) --------- Co-authored-by: Piotr Stenke <[email protected]>
1 parent c712490 commit efc6317

File tree

17 files changed

+2623
-0
lines changed

17 files changed

+2623
-0
lines changed
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
{
2+
"Name": "RadiationExposure",
3+
"BaseUnit": "CoulombPerKilogram",
4+
"XmlDocSummary": "Radiation exposure is a measure of the ionization of air due to ionizing radiation from photons.",
5+
"XmlDocsRemarks": "https://en.wikipedia.org/wiki/Radiation_exposure",
6+
"BaseDimensions": {
7+
"M": -1,
8+
"T": 1,
9+
"I": 1
10+
},
11+
"Units": [
12+
{
13+
"SingularName": "CoulombPerKilogram",
14+
"PluralName": "CoulombsPerKilogram",
15+
"FromUnitToBaseFunc": "{x}",
16+
"FromBaseToUnitFunc": "{x}",
17+
"BaseUnits": {
18+
"M": "Kilogram",
19+
"T": "Second",
20+
"I": "Ampere"
21+
},
22+
"Prefixes": [ "Pico", "Nano", "Micro", "Milli" ],
23+
"Localization": [
24+
{
25+
"Culture": "en-US",
26+
"Abbreviations": [ "C/kg" ]
27+
}
28+
]
29+
},
30+
{
31+
"SingularName": "Roentgen",
32+
"PluralName": "Roentgens",
33+
"FromUnitToBaseFunc": "{x} * 2.58e-4",
34+
"FromBaseToUnitFunc": "{x} / 2.58e-4",
35+
"Prefixes": [ "Micro", "Milli" ],
36+
"BaseUnits": {
37+
"M": "Kilogram",
38+
"T": "Second",
39+
"I": "Ampere"
40+
},
41+
"Localization": [
42+
{
43+
"Culture": "en-US",
44+
"Abbreviations": [ "R" ]
45+
}
46+
]
47+
}
48+
]
49+
}

Common/UnitEnumValues.g.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1825,5 +1825,15 @@
18251825
"Picobecquerel": 36,
18261826
"Picocurie": 35,
18271827
"Picorutherford": 25
1828+
},
1829+
"RadiationExposure": {
1830+
"CoulombPerKilogram": 10,
1831+
"MicrocoulombPerKilogram": 3,
1832+
"MillicoulombPerKilogram": 2,
1833+
"NanocoulombPerKilogram": 6,
1834+
"PicocoulombPerKilogram": 5,
1835+
"Roentgen": 4,
1836+
"Microroentgen": 12,
1837+
"Milliroentgen": 13
18281838
}
18291839
}

UnitsNet.NanoFramework/GeneratedCode/Quantities/RadiationExposure.g.cs

Lines changed: 250 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<PropertyGroup Label="Globals">
4+
<NanoFrameworkProjectSystemPath>$(MSBuildExtensionsPath)\nanoFramework\v1.0\</NanoFrameworkProjectSystemPath>
5+
</PropertyGroup>
6+
<Import Project="$(NanoFrameworkProjectSystemPath)NFProjectSystem.Default.props" Condition="Exists('$(NanoFrameworkProjectSystemPath)NFProjectSystem.Default.props')" />
7+
<PropertyGroup>
8+
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
9+
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
10+
<ProjectTypeGuids>{11A8DD76-328B-46DF-9F39-F559912D0360};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
11+
<ProjectGuid>{69b383c7-828a-1857-cbe2-f11b9ba77320}</ProjectGuid>
12+
<OutputType>Library</OutputType>
13+
<AppDesignerFolder>Properties</AppDesignerFolder>
14+
<FileAlignment>512</FileAlignment>
15+
<RootNamespace>UnitsNet</RootNamespace>
16+
<AssemblyName>UnitsNet.RadiationExposure</AssemblyName>
17+
<TargetFrameworkVersion>v1.0</TargetFrameworkVersion>
18+
<DocumentationFile>bin\$(Configuration)\$(AssemblyName).xml</DocumentationFile>
19+
</PropertyGroup>
20+
<Import Project="$(NanoFrameworkProjectSystemPath)NFProjectSystem.props" Condition="Exists('$(NanoFrameworkProjectSystemPath)NFProjectSystem.props')" />
21+
<ItemGroup>
22+
<Compile Include="..\Quantities\RadiationExposure.g.cs" />
23+
<Compile Include="..\Units\RadiationExposureUnit.g.cs" />
24+
<Compile Include="..\Properties\AssemblyInfo.cs" />
25+
</ItemGroup>
26+
<ItemGroup>
27+
<Reference Include="mscorlib, Version=1.15.6.0, Culture=neutral, PublicKeyToken=c07d481e9758c731">
28+
<HintPath>..\packages\nanoFramework.CoreLibrary.1.15.5\lib\mscorlib.dll</HintPath>
29+
<Private>True</Private>
30+
<SpecificVersion>True</SpecificVersion>
31+
</Reference>
32+
</ItemGroup>
33+
<ItemGroup>
34+
<None Include="packages.config" />
35+
</ItemGroup>
36+
<Import Project="$(NanoFrameworkProjectSystemPath)NFProjectSystem.CSharp.targets" Condition="Exists('$(NanoFrameworkProjectSystemPath)NFProjectSystem.CSharp.targets')" />
37+
<ProjectExtensions>
38+
<ProjectCapabilities>
39+
<ProjectConfigurationsDeclaredAsItems />
40+
</ProjectCapabilities>
41+
</ProjectExtensions>
42+
</Project>
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
3+
<metadata>
4+
<id>UnitsNet.nanoFramework.RadiationExposure</id>
5+
<version>5.41.0</version>
6+
<title>Units.NET RadiationExposure - nanoFramework</title>
7+
<authors>Andreas Gullberg Larsen,nanoframework</authors>
8+
<owners>UnitsNet</owners>
9+
<license type="expression">MIT</license>
10+
<projectUrl>https://github.com/angularsen/UnitsNet</projectUrl>
11+
<requireLicenseAcceptance>false</requireLicenseAcceptance>
12+
<description>Adds RadiationExposure units for Units.NET on .NET nanoFramework. For .NET or .NET Core, use UnitsNet instead.</description>
13+
<iconUrl>https://raw.githubusercontent.com/angularsen/UnitsNet/ce85185429be345d77eb2ce09c99d59cc9ab8aed/Docs/Images/logo-32.png</iconUrl>
14+
<releaseNotes>
15+
</releaseNotes>
16+
<copyright>Copyright 2013 Andreas Gullberg Larsen ([email protected]).</copyright>
17+
<language>en-US</language>
18+
<tags>nanoframework radiationexposure unit units quantity quantities measurement si metric imperial abbreviation abbreviations convert conversion parse immutable</tags>
19+
<dependencies>
20+
<dependency id="nanoFramework.CoreLibrary" version="1.15.5" />
21+
</dependencies>
22+
</metadata>
23+
<files>
24+
<file src="..\..\..\Artifacts\UnitsNet.NanoFramework\RadiationExposure\UnitsNet.*" target="lib" />
25+
</files>
26+
</package>
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<packages>
3+
<package id="nanoFramework.CoreLibrary" version="1.15.5" targetFramework="netnanoframework10" />
4+
</packages>

0 commit comments

Comments
 (0)