<freeStyleBuild _class='hudson.model.FreeStyleBuild'><action _class='hudson.model.CauseAction'><cause _class='com.cloudbees.jenkins.GitHubPushCause'><shortDescription>Started by GitHub push by lamont-granquist</shortDescription></cause></action><action></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesorigindev _class='hudson.plugins.git.util.Build'><buildNumber>1510</buildNumber><marked><SHA1>61dd6fd004ecefc8554abf555b5a3eac3d494abb</SHA1><branch><SHA1>61dd6fd004ecefc8554abf555b5a3eac3d494abb</SHA1><name>refs/remotes/origin/dev</name></branch></marked><revision><SHA1>61dd6fd004ecefc8554abf555b5a3eac3d494abb</SHA1><branch><SHA1>61dd6fd004ecefc8554abf555b5a3eac3d494abb</SHA1><name>refs/remotes/origin/dev</name></branch></revision></refsremotesorigindev></buildsByBranchName><lastBuiltRevision><SHA1>61dd6fd004ecefc8554abf555b5a3eac3d494abb</SHA1><branch><SHA1>61dd6fd004ecefc8554abf555b5a3eac3d494abb</SHA1><name>refs/remotes/origin/dev</name></branch></lastBuiltRevision><remoteUrl>https://github.com/MuMech/MechJeb2.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><artifact><displayPath>MechJeb2-2.15.1.0-1510.zip</displayPath><fileName>MechJeb2-2.15.1.0-1510.zip</fileName><relativePath>MechJeb2-2.15.1.0-1510.zip</relativePath></artifact><building>false</building><displayName>#1510</displayName><duration>22741</duration><estimatedDuration>21569</estimatedDuration><fullDisplayName>MechJeb2-Dev #1510</fullDisplayName><id>1510</id><inProgress>false</inProgress><keepLog>false</keepLog><number>1510</number><queueId>2371</queueId><result>SUCCESS</result><timestamp>1767216295846</timestamp><url>https://ksp.sarbian.com/jenkins/user/azzurite/my-views/view/all/job/MechJeb2-Dev/1510/</url><builtOn></builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>MechJebLib/Primitives/M3.cs</affectedPath><affectedPath>MechJebLib/PSG/GuidanceLQR.cs</affectedPath><affectedPath>MechJebLib/MechJebLib.csproj</affectedPath><affectedPath>MechJebLibTest/Primitives/M3Tests/OrthonormalizeQuaternionTests.cs</affectedPath><affectedPath>MechJebLibTest/Primitives/M3Tests/CoreOperationsTests.cs</affectedPath><affectedPath>MechJebLib/Primitives/Dual.cs</affectedPath><affectedPath>MechJeb2/MechJebModuleAscentMenu.cs</affectedPath><affectedPath>MechJebLib/PSG/Phase.cs</affectedPath><affectedPath>MechJebLib/Primitives/HBase.cs</affectedPath><affectedPath>MechJebLib/PSG/RiccatiLayout.cs</affectedPath><affectedPath>MechJebLib/PSG/AscentProblem.cs</affectedPath><affectedPath>MechJebLib/PSG/Optimizer.cs</affectedPath><affectedPath>MechJeb2/MechJebModuleGuidanceController.cs</affectedPath><affectedPath>MechJebLib/Primitives/DualV3.cs</affectedPath><affectedPath>MechJebLib/PSG/Solution.cs</affectedPath><affectedPath>MechJeb2.sln.DotSettings</affectedPath><affectedPath>MechJebLib/PSG/LQRLayout.cs</affectedPath><affectedPath>MechJebLib/TwoBody/Shepperd.cs</affectedPath><commitId>71b89dd335b202b0c1965f12048eb04b303706d2</commitId><timestamp>1767216275000</timestamp><author><absoluteUrl>https://ksp.sarbian.com/jenkins/user/lamont</absoluteUrl><fullName>lamont</fullName></author><authorEmail>lamont@scriptkiddie.org</authorEmail><comment>Add LQR guidance controller to PSG

Still in a bit of a janky state, this may be buggy.

Think a bunch of other fixes and conversion of the M3 class to
readonly also snuck into it, so this is more like a checkpoint of
active development.

Signed-off-by: Lamont Granquist &lt;lamont@scriptkiddie.org&gt;
</comment><date>2025-12-31 13:24:35 -0800</date><id>71b89dd335b202b0c1965f12048eb04b303706d2</id><msg>Add LQR guidance controller to PSG</msg><path><editType>edit</editType><file>MechJebLib/Primitives/HBase.cs</file></path><path><editType>edit</editType><file>MechJebLibTest/Primitives/M3Tests/CoreOperationsTests.cs</file></path><path><editType>edit</editType><file>MechJebLibTest/Primitives/M3Tests/OrthonormalizeQuaternionTests.cs</file></path><path><editType>edit</editType><file>MechJebLib/MechJebLib.csproj</file></path><path><editType>edit</editType><file>MechJebLib/PSG/Optimizer.cs</file></path><path><editType>edit</editType><file>MechJeb2.sln.DotSettings</file></path><path><editType>edit</editType><file>MechJebLib/PSG/Solution.cs</file></path><path><editType>edit</editType><file>MechJebLib/Primitives/DualV3.cs</file></path><path><editType>edit</editType><file>MechJeb2/MechJebModuleGuidanceController.cs</file></path><path><editType>edit</editType><file>MechJebLib/PSG/Phase.cs</file></path><path><editType>edit</editType><file>MechJeb2/MechJebModuleAscentMenu.cs</file></path><path><editType>add</editType><file>MechJebLib/PSG/RiccatiLayout.cs</file></path><path><editType>add</editType><file>MechJebLib/PSG/GuidanceLQR.cs</file></path><path><editType>edit</editType><file>MechJebLib/Primitives/Dual.cs</file></path><path><editType>edit</editType><file>MechJebLib/TwoBody/Shepperd.cs</file></path><path><editType>edit</editType><file>MechJebLib/PSG/AscentProblem.cs</file></path><path><editType>add</editType><file>MechJebLib/PSG/LQRLayout.cs</file></path><path><editType>edit</editType><file>MechJebLib/Primitives/M3.cs</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://ksp.sarbian.com/jenkins/user/lamont</absoluteUrl><fullName>lamont</fullName></culprit></freeStyleBuild>