Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions astronomy/orbit_analysis_test.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -437,7 +437,7 @@ TEST_F(OrbitAnalysisTest, GalileoNominalSlot) {
IsNear(00.01_(1) * Degree));

EXPECT_THAT(
(ReduceAngle<0, 2 * π>(
(ReduceAngle<0.0, 2 * π>(
elements.mean_longitude_of_ascending_node_interval().midpoint() -
nominal_nodal_precession * (mean_time - reference_epoch))),
AbsoluteErrorFrom(317.632 * Degree, IsNear(0.082_(1) * Degree)));
Expand All @@ -456,7 +456,7 @@ TEST_F(OrbitAnalysisTest, GalileoNominalSlot) {
// anomaly is actually the mean argument of latitude; in order to get numbers
// consistent with theirs, we must look at ω + M.
EXPECT_THAT(
(ReduceAngle<0, 2 * π>(
(ReduceAngle<0.0, 2 * π>(
elements.mean_elements().front().argument_of_periapsis +
elements.mean_elements().front().mean_anomaly -
nominal_anomalistic_mean_motion * (initial_time - reference_epoch))),
Expand Down Expand Up @@ -519,17 +519,17 @@ TEST_F(OrbitAnalysisTest, GalileoExtendedSlot) {
IsNear(00.0044_(1) * Degree));

EXPECT_THAT(
(ReduceAngle<0, 2 * π>(
(ReduceAngle<0.0, 2 * π>(
elements.mean_longitude_of_ascending_node_interval().midpoint() -
nominal_nodal_precession * (mean_time - reference_epoch))),
AbsoluteErrorFrom(52.521 * Degree, IsNear(0.29_(1) * Degree)));
EXPECT_THAT((ReduceAngle<0, 2 * π>(
EXPECT_THAT((ReduceAngle<0.0, 2 * π>(
elements.mean_argument_of_periapsis_interval().midpoint() -
nominal_apsidal_precession * (mean_time - reference_epoch))),
AbsoluteErrorFrom(56.198 * Degree, IsNear(0.48_(1) * Degree)));

EXPECT_THAT(
(ReduceAngle<0, 2 * π>(
(ReduceAngle<0.0, 2 * π>(
elements.mean_elements().front().mean_anomaly -
nominal_anomalistic_mean_motion * (initial_time - reference_epoch))),
AbsoluteErrorFrom(136.069 * Degree, IsNear(2.5_(1) * Degree)));
Expand Down
4 changes: 2 additions & 2 deletions astronomy/orbit_ground_track_body.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ Interval<Angle> MeanSolarTimesOfNodes(
mean_solar_time =
UnwindFrom(*mean_solar_time, MeanSolarTime(node, mean_sun));
} else {
mean_solar_time = ReduceAngle<0, 2 * π>(MeanSolarTime(node, mean_sun));
mean_solar_time = ReduceAngle<0.0, 2 * π>(MeanSolarTime(node, mean_sun));
}
mean_solar_times.Include(*mean_solar_time);
}
Expand All @@ -93,7 +93,7 @@ inline Interval<Angle> ReducedLongitudesOfEquatorialCrossings(
longitude - initial_offset - n * nominal_recurrence.equatorial_shift();
reduced_longitude = reduced_longitude.has_value()
? UnwindFrom(*reduced_longitude, offset_longitude)
: ReduceAngle<0, 2 * π>(offset_longitude);
: ReduceAngle<0.0, 2 * π>(offset_longitude);
reduced_longitudes.Include(*reduced_longitude);
}
return reduced_longitudes;
Expand Down
6 changes: 3 additions & 3 deletions astronomy/orbital_elements_body.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -470,14 +470,14 @@ OrbitalElements::ToClassicalElements(
.eccentricity = e,
.inclination = i,
.longitude_of_ascending_node = classical_elements.empty()
? ReduceAngle<0, 2 * π>(Ω)
? ReduceAngle<0.0, 2 * π>(Ω)
: UnwindFrom(classical_elements.back().longitude_of_ascending_node,
Ω),
.argument_of_periapsis = classical_elements.empty()
? ReduceAngle<0, 2 * π>(ω)
? ReduceAngle<0.0, 2 * π>(ω)
: UnwindFrom(classical_elements.back().argument_of_periapsis, ω),
.mean_anomaly = classical_elements.empty()
? ReduceAngle<0, 2 * π>(M)
? ReduceAngle<0.0, 2 * π>(M)
: UnwindFrom(classical_elements.back().mean_anomaly, M),
.periapsis_distance = (1 - e) * equinoctial.a,
.apoapsis_distance = (1 + e) * equinoctial.a});
Expand Down
12 changes: 6 additions & 6 deletions astronomy/trappist_dynamics_test.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -182,7 +182,7 @@ void Genome::Mutate(std::mt19937_64& engine,
*element.argument_of_periapsis +
distribution(engine) * 10 * Degree * multiplicator;
mutated_element.argument_of_periapsis =
ReduceAngle<0, 2 * π>(*mutated_element.argument_of_periapsis);
ReduceAngle<0.0, 2 * π>(*mutated_element.argument_of_periapsis);
mutated_element.period =
*element.period +
distribution(engine) * 5 * Second * Sqrt(multiplicator);
Expand All @@ -202,7 +202,7 @@ void Genome::Mutate(std::mt19937_64& engine,
*element.mean_anomaly +
distribution(engine) * 10 * Degree * multiplicator;
mutated_element.mean_anomaly =
ReduceAngle<0, 2 * π>(*mutated_element.mean_anomaly);
ReduceAngle<0.0, 2 * π>(*mutated_element.mean_anomaly);

element = mutated_element;
}
Expand Down Expand Up @@ -385,7 +385,7 @@ void Population::TraceNewBestGenome(Genome const& genome) const {
if (best_genome_) {
file_ << "old L = "
<< absl::StrCat(
ReduceAngle<0, 2 * π>(
ReduceAngle<0.0, 2 * π>(
best_genome_->elements()[j].longitude_of_ascending_node +
*best_genome_->elements()[j].argument_of_periapsis +
*best_genome_->elements()[j].mean_anomaly) /
Expand All @@ -403,7 +403,7 @@ void Population::TraceNewBestGenome(Genome const& genome) const {
<< "°\n";
}
file_ << "new L = "
<< absl::StrCat(ReduceAngle<0, 2 * π>(
<< absl::StrCat(ReduceAngle<0.0, 2 * π>(
genome.elements()[j].longitude_of_ascending_node +
*genome.elements()[j].argument_of_periapsis +
*genome.elements()[j].mean_anomaly) /
Expand Down Expand Up @@ -1453,12 +1453,12 @@ TEST_F(TrappistDynamicsTest, DISABLED_SECULAR_Optimization) {
<< *elements.period / Day << " d\"";
LOG(ERROR) << std::setprecision(std::numeric_limits<double>::max_digits10)
<< " argument_of_periapsis : \""
<< ReduceAngle<0, 2 * π>(*elements.argument_of_periapsis) /
<< ReduceAngle<0.0, 2 * π>(*elements.argument_of_periapsis) /
Degree
<< " deg\"";
LOG(ERROR) << std::setprecision(std::numeric_limits<double>::max_digits10)
<< " mean_anomaly : \""
<< ReduceAngle<0, 2 * π>(*elements.mean_anomaly) / Degree
<< ReduceAngle<0.0, 2 * π>(*elements.mean_anomaly) / Degree
<< " deg\"";
}
}
Expand Down
8 changes: 4 additions & 4 deletions numerics/angle_reduction_test.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -93,20 +93,20 @@ TYPED_TEST_P(AngleReductionTest, Reduce0To2π) {
Angle fractional_part;
std::int64_t integer_part;

ReduceAngle<0, 2 * π>(Angle(1 * Radian), fractional_part, integer_part);
ReduceAngle<0.0, 2 * π>(Angle(1 * Radian), fractional_part, integer_part);
EXPECT_THAT(fractional_part, AlmostEquals(Angle(1 * Radian), 0));
EXPECT_EQ(0, integer_part);

ReduceAngle<0, 2 * π>(Angle(4 * Radian), fractional_part, integer_part);
ReduceAngle<0.0, 2 * π>(Angle(4 * Radian), fractional_part, integer_part);
EXPECT_THAT(fractional_part, AlmostEquals(Angle(4 * Radian), 0));
EXPECT_EQ(0, integer_part);

ReduceAngle<0, 2 * π>(Angle(-1 * Radian), fractional_part, integer_part);
ReduceAngle<0.0, 2 * π>(Angle(-1 * Radian), fractional_part, integer_part);
EXPECT_THAT(fractional_part,
AlmostEquals(two_π<Angle> + Angle(-1 * Radian), 0));
EXPECT_EQ(-1, integer_part);

ReduceAngle<0, 2 * π>(Angle(7 * Radian), fractional_part, integer_part);
ReduceAngle<0.0, 2 * π>(Angle(7 * Radian), fractional_part, integer_part);
EXPECT_THAT(fractional_part,
AlmostEquals(Angle(7 * Radian) - two_π<Angle>, 0));
EXPECT_EQ(1, integer_part);
Expand Down
8 changes: 4 additions & 4 deletions physics/kepler_orbit_body.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -168,15 +168,15 @@ KeplerOrbit<Frame>::KeplerOrbit(
// Inclination (above the xy plane).
Angle const i = AngleBetween(x_wedge_y, h);
// Argument of periapsis.
Angle const ω =
ReduceAngle<0, 2 * π>(OrientedAngleBetween(ascending_node, periapsis, h));
Angle const ω = ReduceAngle<0.0, 2 * π>(
OrientedAngleBetween(ascending_node, periapsis, h));
// Longitude of ascending node.
// This is equivalent to `OrientedAngleBetween(x, ascending_node, x_wedge_y)`
// since `ascending_node` lies in the xy plane.
Angle const Ω = ReduceAngle<0, 2 * π>(
Angle const Ω = ReduceAngle<0.0, 2 * π>(
ArcTan(ascending_node.coordinates().y, ascending_node.coordinates().x));
Angle const true_anomaly =
ReduceAngle<0, 2 * π>(OrientedAngleBetween(periapsis, r, h));
ReduceAngle<0.0, 2 * π>(OrientedAngleBetween(periapsis, r, h));

SpecificEnergy const ε = v.Norm²() / 2 - μ / r.Norm();
double const e = eccentricity_vector.Norm();
Expand Down
2 changes: 1 addition & 1 deletion tools/generate_kopernicus.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,7 @@ void GenerateKopernicusForSlippist1(
kopernicus_cfg << " @body[" << name << "] {\n";
if (!is_star) {
kopernicus_cfg << " @reference_angle = "
<< ReduceAngle<0, 2 * π>(
<< ReduceAngle<0.0, 2 * π>(
FindOrDie(body_angle, name) +
ParseQuantity<Angle>(
elements.argument_of_periapsis()) +
Expand Down
Loading