ADCS.controller.plan_and_track.debug_planner module

Debug wrapper for the trajectory planner that provides step-by-step output.

This module provides a DebugPlanner class that wraps the tplaunch.Planner and exposes the same interface, while providing detailed diagnostic output about the backward/forward passes, constraint violations, and active sets.

Usage:

# In plan_and_track_exact.py, replace: # self.planner = tplaunch.Planner(…) # With: # from ADCS.controller.plan_and_track.debug_planner import DebugPlanner # self.planner = DebugPlanner(csat, …, debug_level=2)

class ADCS.controller.plan_and_track.debug_planner.DebugPlanner(csat, systemSettings, alilqrSettings, alilqrSettings2, initialTrajSettings, costSettings, costSettings2, costSettings_tvlqr, debug_level=1, log_file=None)[source]

Bases: object

A wrapper around tplaunch.Planner that provides debugging output.

debug_level:

0 = No debug output (passthrough to underlying planner) 1 = Summary output (cost, max violation, iteration counts) 2 = Detailed output (control patterns, constraint states) 3 = Very detailed (per-timestep values)

Parameters:
  • debug_level (int)

  • log_file (Optional[str])

addRandNoise(dt, trajPy, dlaZcount, stepsSinceRand, breakSettings, regSettings, costSettings, auglag_vals, vecs)[source]

Add random noise with debug output.

alilqr(dt, trajPy, vecsPy, costSettings, alilqrSettings, isFirstSearch)[source]

Full ALILQR with debug output.

backwardPass(dt, trajPy, vecsPy, auglag_valsPy, regs, costSettings, regSettings, useDist)[source]

Backward pass with debug output.

cleanUpAfterAlilqr(vecsPy, dt_prev, time_start, time_end, alilqrOut)[source]

Clean up after ALILQR.

cost2Func(trajPy, vecsPy, auglag_valsPy, costSettings)[source]

Cost function with debug output.

dynamics(x, u, dynamics_info)[source]

Dynamics evaluation.

echo_int(x)[source]
Parameters:

x (int)

forwardPass(dt, trajPy, vecsPy, auglag_valsPy, BPresultsPy, regs, costSettings, regSettings, lineSearchSettings, useDist)[source]

Forward pass with debug output.

generateInitialTrajectory(dt, x0, Uset, vecsPy)[source]

Generate initial trajectory with debug output.

getdt()[source]
ilqrBreak(grad, LA, dLA, dlaZcount, cmax, iter, breakSettings, outer_iter, ilqr_iter, forOuter)[source]

Break condition check with debug output.

ilqrStep(dt, trajPy, vecsPy, auglag_valsPy, regs, costSettings, regSettings, lineSearchSettings, breakSettings, useDist)[source]

Single iLQR step with debug output.

incrementAugLag(auglag_valsPy, clistPy, auglagSettings)[source]

Increment augmented Lagrangian with debug output.

maxViol(trajPy, vecsPy, auglag_valsPy)[source]

Max violation with debug output.

outerBreak(auglag_valsPy, cmax, breakSettings, auglagSettings, outer_iter)[source]

Outer break condition check with debug output.

prepareForAlilqr(vecsPy, dt_use, time_start, time_end, x0, bdotOn)[source]

Prepare for ALILQR with debug output.

readDebug()[source]
readParameters()[source]
rk4z(dt, x, u, dynamics_info_k, dynamics_info_kp1)[source]

RK4 integration.

setVerbosity(verbosity)[source]
Parameters:

verbosity (bool)

setquaternionTo3VecMode(val)[source]
Parameters:

val (int)

trajOpt(vecsPy, N, time_start, time_end, x0, bdotOn)[source]

Main trajectory optimization with debug output.

updateParameters(*args)[source]