From 163814c84f103a02337335d003b2913e1ee3121a Mon Sep 17 00:00:00 2001 From: swetha3456 Date: Sun, 1 Oct 2023 12:03:41 +0530 Subject: [PATCH 1/3] created file energy_mass_equivalence.py --- physics/energy_mass_equivalence.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 physics/energy_mass_equivalence.py diff --git a/physics/energy_mass_equivalence.py b/physics/energy_mass_equivalence.py new file mode 100644 index 000000000000..b0f8decd2df9 --- /dev/null +++ b/physics/energy_mass_equivalence.py @@ -0,0 +1,21 @@ +""" +Calculates the energy equivalent (in J) of a given mass (in kg). + +- In physics, mass–energy equivalence is the relationship between mass and energy in a system's rest frame. +- The two quantities differ only by a multiplicative constant and the units of measurement. +- The principle is described by the physicist Albert Einstein's formula: E = mc². + +Source: https://en.wikipedia.org/wiki/Mass%E2%80%93energy_equivalence + +""" + +def energy_eq(mass: float) -> float: + """ + Calculate energy equivalent. + The energy equivalent of a mass m is mc², where c is the speed of light. + + """ + if mass < 0: + raise ValueError("The mass of a body cannot be negative") + c = 2.99792458e8 + return mass * c ** 2 \ No newline at end of file From 10e8bcb4965db2cf66df2b98db8f67f97939563e Mon Sep 17 00:00:00 2001 From: swetha3456 Date: Sun, 1 Oct 2023 12:27:12 +0530 Subject: [PATCH 2/3] added doctest --- physics/energy_mass_equivalence.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/physics/energy_mass_equivalence.py b/physics/energy_mass_equivalence.py index b0f8decd2df9..a894169ad192 100644 --- a/physics/energy_mass_equivalence.py +++ b/physics/energy_mass_equivalence.py @@ -14,8 +14,15 @@ def energy_eq(mass: float) -> float: Calculate energy equivalent. The energy equivalent of a mass m is mc², where c is the speed of light. + >>> energy_eq(0.001) + 89875517873681.77 + """ if mass < 0: raise ValueError("The mass of a body cannot be negative") c = 2.99792458e8 - return mass * c ** 2 \ No newline at end of file + return mass * c ** 2 + +if __name__ == "__main__": + import doctest + doctest.testmod() \ No newline at end of file From fb92a73b35848596ea324fae771b563283805c24 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Sun, 1 Oct 2023 06:59:56 +0000 Subject: [PATCH 3/3] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- physics/energy_mass_equivalence.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/physics/energy_mass_equivalence.py b/physics/energy_mass_equivalence.py index a894169ad192..24e97b6af7a4 100644 --- a/physics/energy_mass_equivalence.py +++ b/physics/energy_mass_equivalence.py @@ -9,20 +9,23 @@ """ + def energy_eq(mass: float) -> float: """ - Calculate energy equivalent. + Calculate energy equivalent. The energy equivalent of a mass m is mc², where c is the speed of light. >>> energy_eq(0.001) 89875517873681.77 - + """ if mass < 0: raise ValueError("The mass of a body cannot be negative") c = 2.99792458e8 - return mass * c ** 2 + return mass * c**2 + if __name__ == "__main__": import doctest - doctest.testmod() \ No newline at end of file + + doctest.testmod()