From 7039e7a1ae78b1b30ee54f0b599944d39b737032 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Wed, 6 Dec 2023 23:45:57 +0100 Subject: [PATCH 1/6] Add atand function --- pvlib/tools.py | 33 +++++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 10 deletions(-) diff --git a/pvlib/tools.py b/pvlib/tools.py index fe1b79a5f1..382d7a7a92 100644 --- a/pvlib/tools.py +++ b/pvlib/tools.py @@ -11,7 +11,7 @@ def cosd(angle): """ - Cosine with angle input in degrees + Cosine with angle input in degrees. Parameters ---------- @@ -23,14 +23,13 @@ def cosd(angle): result : float or array-like Cosine of the angle """ - res = np.cos(np.radians(angle)) return res def sind(angle): """ - Sine with angle input in degrees + Sine with angle input in degrees. Parameters ---------- @@ -42,14 +41,13 @@ def sind(angle): result : float Sin of the angle """ - res = np.sin(np.radians(angle)) return res def tand(angle): """ - Tan with angle input in degrees + Tangent with angle input in degrees. Parameters ---------- @@ -61,14 +59,13 @@ def tand(angle): result : float Tan of the angle """ - res = np.tan(np.radians(angle)) return res def asind(number): """ - Inverse Sine returning an angle in degrees + Inverse Sine returning an angle in degrees. Parameters ---------- @@ -80,14 +77,13 @@ def asind(number): result : float arcsin result """ - res = np.degrees(np.arcsin(number)) return res def acosd(number): """ - Inverse Cosine returning an angle in degrees + Inverse Cosine returning an angle in degrees. Parameters ---------- @@ -99,11 +95,28 @@ def acosd(number): result : float arccos result """ - res = np.degrees(np.arccos(number)) return res +def atand(angle): + """ + Inverse Tangent returning an angle in degrees. + + Parameters + ---------- + number : float + Input number + + Returns + ------- + result : float + arccos result + """ + res = np.tan(np.radians(angle)) + return res + + def localize_to_utc(time, location): """ Converts or localizes a time series to UTC. From 6fb7ffe3ef8fe86c6a79cf743d36d54e2986b772 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Wed, 6 Dec 2023 23:58:27 +0100 Subject: [PATCH 2/6] Fix --- pvlib/tools.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pvlib/tools.py b/pvlib/tools.py index 382d7a7a92..ab2bf2e90b 100644 --- a/pvlib/tools.py +++ b/pvlib/tools.py @@ -113,7 +113,7 @@ def atand(angle): result : float arccos result """ - res = np.tan(np.radians(angle)) + res = np.degrees(np.atan(number)) return res From 0bee7762ef9664bc662c4be8a4ab5f8a5028a499 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Wed, 6 Dec 2023 23:58:45 +0100 Subject: [PATCH 3/6] Fix me again --- pvlib/tools.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pvlib/tools.py b/pvlib/tools.py index ab2bf2e90b..39b709de68 100644 --- a/pvlib/tools.py +++ b/pvlib/tools.py @@ -99,7 +99,7 @@ def acosd(number): return res -def atand(angle): +def atand(number): """ Inverse Tangent returning an angle in degrees. From 6ca81631900c41eea5d1f67b681925948171911c Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Wed, 6 Dec 2023 23:59:45 +0100 Subject: [PATCH 4/6] Last fix promise --- pvlib/tools.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pvlib/tools.py b/pvlib/tools.py index 39b709de68..4ace055168 100644 --- a/pvlib/tools.py +++ b/pvlib/tools.py @@ -113,7 +113,7 @@ def atand(number): result : float arccos result """ - res = np.degrees(np.atan(number)) + res = np.degrees(np.arctan(number)) return res From 35d679ca9e6417ac6f1114bd54009e3c5ab96a81 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Mon, 11 Dec 2023 20:53:53 +0100 Subject: [PATCH 5/6] Update pvlib/tools.py Co-authored-by: Kevin Anderson --- pvlib/tools.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pvlib/tools.py b/pvlib/tools.py index 4ace055168..01c034400b 100644 --- a/pvlib/tools.py +++ b/pvlib/tools.py @@ -111,7 +111,7 @@ def atand(number): Returns ------- result : float - arccos result + arctan result """ res = np.degrees(np.arctan(number)) return res From a40f7fda61466a5ccf119fca6e8853c8304ad472 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Mon, 11 Dec 2023 22:38:33 +0100 Subject: [PATCH 6/6] Apply suggestions from code review Thanks for these improvements @adriesse Co-authored-by: Anton Driesse --- pvlib/tools.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pvlib/tools.py b/pvlib/tools.py index 01c034400b..adf502a79d 100644 --- a/pvlib/tools.py +++ b/pvlib/tools.py @@ -11,7 +11,7 @@ def cosd(angle): """ - Cosine with angle input in degrees. + Trigonometric cosine with angle input in degrees. Parameters ---------- @@ -29,7 +29,7 @@ def cosd(angle): def sind(angle): """ - Sine with angle input in degrees. + Trigonometric sine with angle input in degrees. Parameters ---------- @@ -47,7 +47,7 @@ def sind(angle): def tand(angle): """ - Tangent with angle input in degrees. + Trigonometric tangent with angle input in degrees. Parameters ---------- @@ -65,7 +65,7 @@ def tand(angle): def asind(number): """ - Inverse Sine returning an angle in degrees. + Trigonometric inverse sine returning an angle in degrees. Parameters ---------- @@ -83,7 +83,7 @@ def asind(number): def acosd(number): """ - Inverse Cosine returning an angle in degrees. + Trigonometric inverse cosine returning an angle in degrees. Parameters ---------- @@ -101,7 +101,7 @@ def acosd(number): def atand(number): """ - Inverse Tangent returning an angle in degrees. + Trigonometric inverse tangent returning an angle in degrees. Parameters ----------