diff --git a/data/orbits/starlink.csv b/data/orbits/starlink.csv new file mode 100644 index 0000000..6c1641e --- /dev/null +++ b/data/orbits/starlink.csv @@ -0,0 +1,5 @@ +1150.0:53.0:32:50 +1110.0:53.8:32:50 +1130.0:74.0:8:50 +1275.0:81.0:5:75 +1325.0:70.0:6:75 diff --git a/data/orbits/telesat.csv b/data/orbits/telesat.csv new file mode 100644 index 0000000..54faaac --- /dev/null +++ b/data/orbits/telesat.csv @@ -0,0 +1,2 @@ +1000.0:99.5:6:12 +1248.0:37.4:5:9 diff --git a/examples/leo-bulk-send-example.cc b/examples/leo-bulk-send-example.cc index 2ddf625..b8de4b1 100644 --- a/examples/leo-bulk-send-example.cc +++ b/examples/leo-bulk-send-example.cc @@ -84,7 +84,7 @@ int main (int argc, char *argv[]) LeoOrbitNodeHelper orbit; NodeContainer satellites; - if (orbitFile.empty()) + if (!orbitFile.empty()) { satellites = orbit.Install (orbitFile); } diff --git a/examples/leo-circular-orbit-tracing-example.cc b/examples/leo-circular-orbit-tracing-example.cc index 980b74a..d8718e9 100644 --- a/examples/leo-circular-orbit-tracing-example.cc +++ b/examples/leo-circular-orbit-tracing-example.cc @@ -38,7 +38,7 @@ int main(int argc, char *argv[]) CommandLine cmd; std::string orbitFile; std::string traceFile; - double duration = 60; + std::string duration = "60s"; cmd.AddValue("orbitFile", "CSV file with orbit parameters", orbitFile); cmd.AddValue("traceFile", "CSV file to store mobility trace in", traceFile); cmd.AddValue("precision", "ns3::LeoCircularOrbitMobilityModel::Precision"); @@ -47,7 +47,7 @@ int main(int argc, char *argv[]) LeoOrbitNodeHelper orbit; NodeContainer satellites; - if (orbitFile.empty()) + if (!orbitFile.empty()) { satellites = orbit.Install (orbitFile); } @@ -71,7 +71,7 @@ int main(int argc, char *argv[]) std::cout << "Time,Satellite,x,y,z,Speed" << std::endl; - Simulator::Stop (Seconds (duration)); + Simulator::Stop (Time (duration)); Simulator::Run (); Simulator::Destroy (); diff --git a/examples/leo-delay-tracing-example.cc b/examples/leo-delay-tracing-example.cc index 97ea133..04555b8 100644 --- a/examples/leo-delay-tracing-example.cc +++ b/examples/leo-delay-tracing-example.cc @@ -136,7 +136,7 @@ int main (int argc, char *argv[]) LeoOrbitNodeHelper orbit; NodeContainer satellites; - if (orbitFile.empty()) + if (!orbitFile.empty()) { satellites = orbit.Install (orbitFile); } diff --git a/model/leo-circular-orbit-mobility-model.cc b/model/leo-circular-orbit-mobility-model.cc index 9b2e512..43e7ed7 100644 --- a/model/leo-circular-orbit-mobility-model.cc +++ b/model/leo-circular-orbit-mobility-model.cc @@ -123,7 +123,8 @@ LeoCircularOrbitMobilityModel::GetProgress (Time t) const { sign = -1; } - return sign * (2 * M_PI * ((GetSpeed () * t.GetSeconds ()) / LEO_EARTH_RAD_KM)) + m_offset; + // 2pi * (distance travelled / circumference of earth) + offset + return sign * (((GetSpeed () * t.GetSeconds ()) / (LEO_EARTH_RAD_KM * 1000))) + m_offset; } Vector3D