Submit | All submissions | Best solutions | Back to list |
PROG0072 - Palermo scale |
Preparation
Python has a built-in function to calculate logarithms. This function, however, is in the math module, which you first need to import before you can work with the additional functionality disclosed therein. Below is a small piece of code that this module imports and calculates the logarithm with base 10 of the number 100.
>>> import math >>> math.log(100, 10) 2.0
See page 67 and 68 in the manual for more information on the math module.
Assignment
The Palermo Technical Impact Hazard Scale is a logarithmic scale used by astronomers to rate the potential hazard of impact of a meteorite. It combines three types of data into a single "hazard" value: the number of years until the impact ($\Delta t$), the probability of impact ($P_i$), and the estimated kinetic yield ($E_i$), which is calculated based on the estimated size and impact speed of the meteorite.The value of the Palermo Scale ($\mathcal P$) is defined as a common logarithm \[ \mathcal P = \log_{10}\frac{P_i}{f_b\times\Delta_t}\,. \] In which $\Delta_t$ represents the number of years between now and the time of impact and $f_b$ is the background impact frequency of annual impacts on earth. The background impact frequency is defined for this purpose as: \[ f_b = 0.03\times E_i^{-0.8}, \] where the energy threshold ($E_i$) is measured in megatons.
Input
The three parameters: $\Delta_t$, $P_i$ and $E_i$, in that order and on three separate lines.
Output
The value of the Palermo Scale.
Example
Input:
10 0.5 20
Output:
1.26267274615
Voorbereiding
Python heeft een ingebouwde functie om logaritmen te berekenen. Deze functie zit echter in de math module, die je eerst moet importeren voor je met de extra functionaliteit die erin vervat zit kunt werken. Hieronder zie je een klein stukje code dat deze module importeert en dan de logaritme met grondtal 10 van het getal 100 berekent.
>>> import math >>> math.log(100, 10) 2.0
Zie ook pagina 67 en 68 in het handboek voor meer informatie over de math module.
Opgave
De Palermoschaal (voluit de Palermo Technical Impact Hazard Scale) is een logaritmische schaal die door astronomen wordt gebruikt om het risico uit te drukken wanneer een bepaalde meteoroïde op aarde zou inslaan. Ze combineert drie parameters tot één enkele risicowaarde: het aantal jaren tot de voorziene inslag ($\Delta t$), de kans dat er een inslag zal plaatsvinden ($P_i$) en de kinetische energie van de inslag ($E_i$) die berekend wordt op basis van de geschatte grootte en impactsnelheid van de meteoroïde. De waarde van de Palermoschaal ($\mathcal P$) wordt gedefinieerd als een logaritme met grondtal 10 \[ \mathcal P = \log_{10}\frac{P_i}{f_b\times\Delta_t}\,. \] Hierbij stelt $\Delta_t$ het aantal jaren voor tussen nu en het tijdstip van de voorziene inslag, en stelt $f_b$ de achtergrondfrequentie van jaarlijkse inslagen op aarde voor. Deze laatste wordt gedefinieerd door \[ f_b = 0.03\times E_i^{-0.8}, \] waarbij de kinetische energie van de inslag ($E_i$) wordt uitgedrukt in megaton.
Invoer
De drie parameters: $\Delta_t$, $P_i$ en $E_i$, in die volgorde en op drie afzonderlijke regels.
Uitvoer
De waarde van de Palermoschaal.
Voorbeeld
Invoer:
10 0.5 20
Uitvoer:
1.26267274615
Added by: | Peter Dawyndt |
Date: | 2011-08-01 |
Time limit: | 10s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | PY_NBC |
Resource: | None |