mathstodon.xyz is one of the many independent Mastodon servers you can use to participate in the fediverse.
A Mastodon instance for maths people. We have LaTeX rendering in the web interface!

Server stats:

2.8K
active users

#formak

0 posts0 participants0 posts today
FormaK<p><a href="https://fosstodon.org/tags/FormaK" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FormaK</span></a> also accepts bug reports or suggestions for improving the library as well outside of the roadmap/enhancement process. I’d love to get feedback from you on use cases you’re considering, features that’d be useful to you, missing tests, bugs you’ve found, you name it</p><p>If you’re interested in contributing, more information can be found at <a href="https://github.com/buckbaskin/formak/blob/main/CONTRIBUTING.md" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/buckbaskin/formak/b</span><span class="invisible">lob/main/CONTRIBUTING.md</span></a></p>
FormaK<p>The <a href="https://fosstodon.org/tags/FormaK" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FormaK</span></a> project now has a publicly available roadmap via GitHub Issues.</p><p>Issues tagged enhancement are under consideration and welcome feedback on if they’d provide value for your use case or tests that’d be required to support your use case<br><a href="https://github.com/buckbaskin/formak/labels/enhancement" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/buckbaskin/formak/l</span><span class="invisible">abels/enhancement</span></a></p>
Buck Baskin<p><span class="h-card" translate="no"><a href="https://fosstodon.org/@formak" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>formak</span></a></span> I wrote up a post about developing the latest feature for <a href="https://fosstodon.org/tags/FormaK" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FormaK</span></a> and the ups and downs along the way</p><p>In the middle there was a nice visual of the sensor bias, but only by way of a long detour into unnecessary work that was removed before the PR merged</p><p><a href="https://buckbaskin.com/blog/strapdown-imu-reference-model-new-formak-feature.html" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">buckbaskin.com/blog/strapdown-</span><span class="invisible">imu-reference-model-new-formak-feature.html</span></a></p>
FormaK<p>The latest feature for <a href="https://fosstodon.org/tags/FormaK" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FormaK</span></a>: a reference implementation of a <a href="https://fosstodon.org/tags/strapdown" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>strapdown</span></a> <a href="https://fosstodon.org/tags/IMU" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>IMU</span></a>!</p><p>Goals for the reference model:</p><p>1. Provide an example for what a more complicated model looks like in FormaK<br>2. Provide a composable implementation of a strapdown IMU that can be built into other models</p><p>The learnings from this model will also inspire some new work coming soon!</p><p>As always, the reference model can be compiled into <a href="https://fosstodon.org/tags/Python" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Python</span></a> and <a href="https://fosstodon.org/tags/Cpp" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Cpp</span></a></p><p>Github: <a href="https://github.com/buckbaskin/formak/pull/19" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/buckbaskin/formak/p</span><span class="invisible">ull/19</span></a></p>
FormaK<p>The latest feature for <a href="https://fosstodon.org/tags/FormaK" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FormaK</span></a>: innovation filtering!</p><p>The previous implementation provided the math for the EKF process update and sensor update; however, that leaves the models open to spurious readings. This can make the filter hard to use (correctly). </p><p>Innovation filtering removes updates that are out of distribution to reject the spurious reading and maintain a robust state estimate</p><p>As always, the <a href="https://fosstodon.org/tags/KalmanFilter" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>KalmanFilter</span></a> comes in <a href="https://fosstodon.org/tags/Python" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Python</span></a> and <a href="https://fosstodon.org/tags/Cpp" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Cpp</span></a></p><p>Github: <a href="https://github.com/buckbaskin/formak/pull/18" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/buckbaskin/formak/p</span><span class="invisible">ull/18</span></a></p>
Buck Baskin<p>New feature launch for <a href="https://fosstodon.org/tags/FormaK" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FormaK</span></a>: a managed <a href="https://fosstodon.org/tags/KalmanFilter" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>KalmanFilter</span></a> runtime!</p><p>I'd been stuck trying to simplify the complexity of managing a process and multiple sensor models since I introduced calibration (which added more complexity... not helping...). In the end I landed on a single tick function call with a dose of <a href="https://fosstodon.org/tags/SFINAE" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>SFINAE</span></a> that handles sensors of any type and takes care of the rest under the hood.</p><p>As always, it comes in <a href="https://fosstodon.org/tags/Python" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Python</span></a> and <a href="https://fosstodon.org/tags/Cpp" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Cpp</span></a></p><p>Blog: <a href="https://buckbaskin.com/blog/formak-runtime-new-formak-feature.html" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="ellipsis">buckbaskin.com/blog/formak-run</span><span class="invisible">time-new-formak-feature.html</span></a><br>Github: <a href="https://github.com/buckbaskin/formak/pull/17" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/buckbaskin/formak/p</span><span class="invisible">ull/17</span></a></p>
Buck Baskin<p>New feature launch for <a href="https://fosstodon.org/tags/FormaK" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FormaK</span></a>: Calibration!</p><p>This feature started with a straightforward idea: use FormaK to model a <a href="https://fosstodon.org/tags/rocket" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>rocket</span></a> launch based on <a href="https://fosstodon.org/tags/NASA" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NASA</span></a> data. Unfortunately, FormaK was missing support for orienting the IMU in the rocket's frame. To fix this, I added calibration support for sensor and process models with the same syntax that supports states and control inputs. </p><p>New features coming soon!</p><p>NASA data: <a href="https://data.nasa.gov/Aerospace/Deorbit-Descent-and-Landing-Flight-1-DDL-F1-/vicw-ivgd" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="ellipsis">data.nasa.gov/Aerospace/Deorbi</span><span class="invisible">t-Descent-and-Landing-Flight-1-DDL-F1-/vicw-ivgd</span></a><br>Blog: <a href="https://buckbaskin.com/blog/calibration-new-formak-feature.html" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="ellipsis">buckbaskin.com/blog/calibratio</span><span class="invisible">n-new-formak-feature.html</span></a><br>Github: <a href="https://github.com/buckbaskin/formak/pull/12" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/buckbaskin/formak/p</span><span class="invisible">ull/12</span></a></p>
Buck Baskin<p>There’s also the persnickety thing about the build time that I’d missed in the first version. The existing Sympy tooling slowed way down for a larger model, but it wasn’t clear where the slow down was coming from and I assumed it was in the compile stage. In the end after much debugging it turned out that calling simplify on a large expression didn’t scale well and took 100s of seconds. </p><p>Is there a <a href="https://fosstodon.org/tags/Python" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Python</span></a> tool to profile function calls as the program is running?<br><a href="https://fosstodon.org/tags/FormaK" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FormaK</span></a> <a href="https://fosstodon.org/tags/OpenSource" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>OpenSource</span></a></p>
Buck Baskin<p>One important thing I learned while implementing the calibration feature: the templating approach that I picked for code generation doesn’t necessarily scale well. The template that used to look like a nice C++ function written with comments is now a mess of formatting pragmas and conditional blocks. More to come on this soon<br><a href="https://fosstodon.org/tags/FormaK" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FormaK</span></a> <a href="https://fosstodon.org/tags/OpenSource" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>OpenSource</span></a> <a href="https://fosstodon.org/tags/cpp" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>cpp</span></a> <a href="https://fosstodon.org/tags/CodeGeneration" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CodeGeneration</span></a></p>
Buck Baskin<p>A new feature has landed for <a href="https://fosstodon.org/tags/FormaK" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FormaK</span></a>! The original models only supported time varying state estimates and control inputs, now it’s easy to include fixed calibration parameters into the models at runtime. This unlocks new models, like the rocket model I referenced in my last feature release</p><p>Check out the “What’s New” page for more<br><a href="https://github.com/buckbaskin/formak/blob/master/docs/whats-new.md#2023-05-05-calibration" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/buckbaskin/formak/b</span><span class="invisible">lob/master/docs/whats-new.md#2023-05-05-calibration</span></a></p><p><a href="https://fosstodon.org/tags/python" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>python</span></a> <a href="https://fosstodon.org/tags/cpp" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>cpp</span></a> <a href="https://fosstodon.org/tags/CodeGeneration" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CodeGeneration</span></a> <a href="https://fosstodon.org/tags/kalman" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>kalman</span></a> <a href="https://fosstodon.org/tags/filter" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>filter</span></a></p>