Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Remove explicit conversion to std::string when it's not required.
[simgrid.git] / src / surf / cpu_ti.cpp
index c9a76fe..6f1121b 100644 (file)
@@ -19,9 +19,7 @@ constexpr double EPSILON = 0.000000001;
 
 XBT_LOG_NEW_DEFAULT_SUBCATEGORY(cpu_ti, res_cpu, "CPU resource, Trace Integration model");
 
-namespace simgrid {
-namespace kernel {
-namespace resource {
+namespace simgrid::kernel::resource {
 
 /*********
  * Trace *
@@ -48,7 +46,7 @@ CpuTiProfile::CpuTiProfile(const profile::Profile* profile)
   double delay=profile->get_repeat_delay()+ events.at(0).date_;
 
   xbt_assert( events.back().value_==prev_value,"Profiles need to end as they start");
-  time     += delay; 
+  time += delay;
   integral += delay*prev_value;
 
   time_points_.push_back(time);
@@ -174,15 +172,12 @@ double CpuTiTmgr::solve(double a, double amount) const
   XBT_DEBUG("Quotient: %g reduced_amount: %f reduced_a: %f", quotient, reduced_amount, reduced_a);
 
   /* Now solve for new_amount which is <= trace_total */
-  double reduced_b;
   XBT_DEBUG("Solve integral: [%.2f, amount=%.2f]", reduced_a, reduced_amount);
-  double amount_till_end = integrate(reduced_a, last_time_);
 
-  if (amount_till_end > reduced_amount) {
-    reduced_b = profile_->solve_simple(reduced_a, reduced_amount);
-  } else {
-    reduced_b = last_time_ + profile_->solve_simple(0.0, reduced_amount - amount_till_end);
-  }
+  double amount_till_end = integrate(reduced_a, last_time_);
+  double reduced_b       = amount_till_end > reduced_amount
+                               ? profile_->solve_simple(reduced_a, reduced_amount)
+                               : last_time_ + profile_->solve_simple(0.0, reduced_amount - amount_till_end);
 
   /* Re-map to the original b and amount */
   return last_time_ * floor(a / last_time_) + (quotient * last_time_) + reduced_b;
@@ -622,6 +617,4 @@ double CpuTiAction::get_remains()
   return get_remains_no_update();
 }
 
-} // namespace resource
-} // namespace kernel
-} // namespace simgrid
+} // namespace simgrid::kernel::resource