<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-gb">
	<link rel="self" type="application/atom+xml" href="https://pybullet.org/Bullet/phpBB3/app.php/feed/topic/1180" />

	<title>Real-Time Physics Simulation Forum</title>
	
	<link href="https://pybullet.org/Bullet/phpBB3/index.php" />
	<updated>2008-08-29T15:47:48+00:00</updated>

	<author><name><![CDATA[Real-Time Physics Simulation Forum]]></name></author>
	<id>https://pybullet.org/Bullet/phpBB3/app.php/feed/topic/1180</id>

		<entry>
		<author><name><![CDATA[KenB]]></name></author>
		<updated>2008-08-29T15:47:48+00:00</updated>

		<published>2008-08-29T15:47:48+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=10161#p10161</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=10161#p10161"/>
		<title type="html"><![CDATA[Re: PhD thesis on numerical methods for rigid bodies]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=10161#p10161"><![CDATA[
<blockquote class="uncited"><div>I'm interested in using the quaternion-based constraints that Claude outlines in his dissertation. Some of it is a bit confusing (he defines an attachment frame twice, etc). And some of the details are spread across the chapters, tucked away in long chains of proofs.<br><br>Does anyone on this forum have experience with such constraints? Are there any other references I should look at?</div></blockquote>Sorry for the slow response time here. I've been trying to cut down on communication lately to get some work done. Anyway, a paper on the quaternion constraints is planned this fall/winter. We'll keep you updated.<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=1339">KenB</a> — Fri Aug 29, 2008 3:47 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Erin Catto]]></name></author>
		<updated>2008-06-20T17:58:45+00:00</updated>

		<published>2008-06-20T17:58:45+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=8843#p8843</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=8843#p8843"/>
		<title type="html"><![CDATA[Re: PhD thesis on numerical methods for rigid bodies]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=8843#p8843"><![CDATA[
I'm interested in using the quaternion-based constraints that Claude outlines in his dissertation. Some of it is a bit confusing (he defines an attachment frame twice, etc). And some of the details are spread across the chapters, tucked away in long chains of proofs.<br><br>Does anyone on this forum have experience with such constraints? Are there any other references I should look at?<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=12">Erin Catto</a> — Fri Jun 20, 2008 5:58 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[KenB]]></name></author>
		<updated>2007-08-10T15:53:13+00:00</updated>

		<published>2007-08-10T15:53:13+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4996#p4996</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4996#p4996"/>
		<title type="html"><![CDATA[PhD thesis on numerical methods for rigid bodies]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4996#p4996"><![CDATA[
<blockquote class="uncited"><div>I haven't read Claude's dissertation yet, but I wonder if his regularization is similar to using softness and Baumgarte together. There are some nice formulas that let you specify softness and Baumgarte in terms of stiffness and damping coefficients. This makes softness and Baumgarte much more physically plausible. I believe the formulas also guarantee stability, i.e., unstable values of the Baumgarte parameter would imply a negative damping and/or stiffness value. With softness/Baumgarte selected from the damping/stiffness values, we get guaranteed stability because PGS is acting like an implicit integrator.<br><br>Further, if you have an approximate mass value, you can use a damping ratio and undamped natural frequency to determine the softness and Baumgarte. I used this for a vehicle suspension constraint.</div></blockquote>Yes, it is similar, but a major difference is that "Baumgarte with softness" can actually be derived from a discrete variational principle in Claude's framework - as a special case (not necessarily the best case..). The time stepping method falls out of the same derivation, as well as information on how to choose the "Baumgarte and softness" parameters, and not to forget: a way to understand what the parameters mean for the physics of the system. These parameters actually have real physical meanings and can be used for modeling of the real physics.<br><br>The regularization allows you to solve for a slightly different physical system, but still indeed a real and valid physical system. Another encouraging result is that the regularized system typically is a _better_ model of the empirical system you try to model - and still easier to solve than the idealized mathematical system.<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=1339">KenB</a> — Fri Aug 10, 2007 3:53 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Erin Catto]]></name></author>
		<updated>2007-06-01T22:24:12+00:00</updated>

		<published>2007-06-01T22:24:12+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4388#p4388</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4388#p4388"/>
		<title type="html"><![CDATA[PhD thesis on numerical methods for rigid bodies]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4388#p4388"><![CDATA[
I haven't read Claude's dissertation yet, but I wonder if his regularization is similar to using softness and Baumgarte together. There are some nice formulas that let you specify softness and Baumgarte in terms of stiffness and damping coefficients. This makes softness and Baumgarte much more physically plausible. I believe the formulas also guarantee stability, i.e., unstable values of the Baumgarte parameter would imply a negative damping and/or stiffness value. With softness/Baumgarte selected from the damping/stiffness values, we get guaranteed stability because PGS is acting like an implicit integrator.<br><br>Further, if you have an approximate mass value, you can use a damping ratio and undamped natural frequency to determine the softness and Baumgarte. I used this for a vehicle suspension constraint.<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=12">Erin Catto</a> — Fri Jun 01, 2007 10:24 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Antonio Martini]]></name></author>
		<updated>2007-06-01T15:21:57+00:00</updated>

		<published>2007-06-01T15:21:57+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4386#p4386</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4386#p4386"/>
		<title type="html"><![CDATA[PhD thesis on numerical methods for rigid bodies]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4386#p4386"><![CDATA[
<blockquote class="uncited"><div>The discussion about rotational integration is pretty much covered there, so I suggest you read that chapter.</div></blockquote>could you please mention where in the Claude's Phd(it's really big) i can find a discussion of the rotational motion integration using methods of molecular dynamics and also a discussion of the inertia related problem linked to the exponential map you mentioned in the other post?<br><br>it's true that it is both difficult and time consuming writing proper maths on here, however mentioning other people work and a page-equations number should be something possible.<br><br>that would be very helpful, thanks in advance,<br>Antonio<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=145">Antonio Martini</a> — Fri Jun 01, 2007 3:21 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Dirk Gregorius]]></name></author>
		<updated>2007-06-01T09:10:18+00:00</updated>

		<published>2007-06-01T09:10:18+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4384#p4384</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4384#p4384"/>
		<title type="html"><![CDATA[PhD thesis on numerical methods for rigid bodies]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4384#p4384"><![CDATA[
<blockquote class="uncited"><div>With Baumgarte stabilization you add the penetration size and velocity to the right hand side of the equation for the langrange multiplier, but the choice of parameters is quite arbitrary, and it isn't overly stable.<br><br>In the derivation of the regularized/stabilized solver you can actually derive the "Baumgarte parameters" from physical principles, and you can also guarantee that the solver doesn't overshoot, thanks to the regularization (I believe this has been called "lambda relaxation" in some of the forums here, but I don't think it has been formally derived from the physics before).</div></blockquote>Choosing Baumgarte parameters is indeed tricky, but don't we actually linearize the problem here, so I always though that this is the main reason for instability. Take for example a ball socket joint. Even when you have perfectly satisfied velocity constraints, you can still end up with large positional errors, due to high angular velocities after integrating the positions. The problem is that Baumgarte tries to compensate for the error of the last frame not the current one (at least in the form we use it). So I liked what U. Asher wrote in one of his papers. "Baumgarte stabilizes the system, but not necessarily using the best trajectory." We linearize the non-linear position constraints, so of course there will be instabilities. GS has limitations, but warm-starting helps a lot since you amortize the iteration count over several frames. Dealing with the non-linear system in much more difficult imo...<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=14">Dirk Gregorius</a> — Fri Jun 01, 2007 9:10 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[KenB]]></name></author>
		<updated>2007-06-01T08:45:39+00:00</updated>

		<published>2007-06-01T08:45:39+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4383#p4383</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4383#p4383"/>
		<title type="html"><![CDATA[PhD thesis on numerical methods for rigid bodies]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4383#p4383"><![CDATA[
Well, it takes a bit too much time to explain things in a forum without using proper math, so I think I'll just refer to Claude's thesis.<br>The discussion about rotational integration is pretty much covered there, so I suggest you read that chapter.<br><br>When it comes to the other "open question", I'm not sure what was really the open question.<br><blockquote class="uncited"><div><br><br>BTW, I think there are open questions to you in two other threads on this forum. I think it would be really appreciated if you would answer those as well. <br><br><a href="http://www.continuousphysics.com/Bullet/phpBB2/viewtopic.php?t=1033" class="postlink">http://www.continuousphysics.com/Bullet ... php?t=1033</a><br><a href="http://www.continuousphysics.com/Bullet/phpBB2/viewtopic.php?t=1124" class="postlink">http://www.continuousphysics.com/Bullet ... php?t=1124</a><br><br>Sorry, but I have sometimes a hard time to follow you...<br><br><br><br>Cheers,<br>-Dirk</div></blockquote><p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=1339">KenB</a> — Fri Jun 01, 2007 8:45 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[KenB]]></name></author>
		<updated>2007-06-01T08:41:13+00:00</updated>

		<published>2007-06-01T08:41:13+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4382#p4382</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4382#p4382"/>
		<title type="html"><![CDATA[PhD thesis on numerical methods for rigid bodies]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4382#p4382"><![CDATA[
Yes, you are perfectly right Erin.<br><br>In the GBF paper, in their "simplified method", they have a second iteration stage where they look for zero velocities by going from restitution -1 to 0. Of course this means that the existing energy/momentum will not be used to resolve penetrations. Penetrations are instead resolved using position projections, and this is a pretty much uncontrolled operation from a physical perspective. However, I do also think that their method has some beuaty to it, since it is incredibly easy to grasp and implement.<br>I think it might be possible to derive their method as a special case/limit of the variational/stabilized solvers that Claude has developed.<br><br>With Baumgarte stabilization you add the penetration size and velocity to the right hand side of the equation for the langrange multiplier, but the choice of parameters is quite arbitrary, and it isn't overly stable.<br><br>In the derivation of the regularized/stabilized solver you can actually derive the "Baumgarte parameters" from physical principles, and you can also guarantee that the solver doesn't overshoot, thanks to the regularization (I believe this has been called "lambda relaxation" in some of the forums here, but I don't think it has been formally derived from the physics before).<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=1339">KenB</a> — Fri Jun 01, 2007 8:41 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Erin Catto]]></name></author>
		<updated>2007-05-31T03:59:56+00:00</updated>

		<published>2007-05-31T03:59:56+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4368#p4368</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4368#p4368"/>
		<title type="html"><![CDATA[PhD thesis on numerical methods for rigid bodies]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4368#p4368"><![CDATA[
Dirk, I'll take a shot at answering your questions and KenB can correct me if I'm wrong.<br><blockquote class="uncited"><div>e.g. Catto's GDC papers (which also is inspired by Claude's previous work). </div></blockquote>Claude's paper <a href="http://www.ep.liu.se/ecp/010/004/ecp01004.pdf" class="postlink">http://www.ep.liu.se/ecp/010/004/ecp01004.pdf</a> said this:<br><blockquote class="uncited"><div>Pairwise impulse based models amount to Gauss-Seidel iterative processes and we will provide data on such methods below.</div></blockquote>From that and other sources (namely Gary Snethen and an ETHZ 2005), I was inspired to develop an impulse method that is equivalent to PGS. Thus I developed the Sequential Impulse algorithm. No aspect of SI was inspired by Claude's algorithms.<br><blockquote class="uncited"><div>nor the zero-right-hand-side-method+projections of Guendelman, Bridson &amp; Fedkiw</div></blockquote>With this I think KenB is referring to the absence of a Baumgarte term. I think KenB is saying that Claude's algorithm is better at preserving things like momentum and/or energy.<br><blockquote class="uncited"><div>Of course the generic problems of projected G-S cannot be totally or trivially overcome.</div></blockquote>The problem PGS has is that it has poor convergence in some cases (heavy object on top of a light object).<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=12">Erin Catto</a> — Thu May 31, 2007 3:59 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Dirk Gregorius]]></name></author>
		<updated>2007-05-30T17:59:58+00:00</updated>

		<published>2007-05-30T17:59:58+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4361#p4361</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4361#p4361"/>
		<title type="html"><![CDATA[PhD thesis on numerical methods for rigid bodies]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=4361#p4361"><![CDATA[
<blockquote class="uncited"><div>e.g. Catto's GDC papers (which also is inspired by Claude's previous work). </div></blockquote>May I ask which work you mean in particular?<br><br><blockquote class="uncited"><div>nor the zero-right-hand-side-method+projections of Guendelman, Bridson &amp; Fedkiw</div></blockquote>What do you mean by the "zero-right-hand-side-method" and to what kind projection do you refer in GBF paper - velocity or position projection?<br><br><blockquote class="uncited"><div>Of course the generic problems of projected G-S cannot be totally or trivially overcome. </div></blockquote>What do you mean by generic problems?<br><br><br><br>BTW, I think there are open questions to you in two other threads on this forum. I think it would be really appreciated if you would answer those as well. <br><br><a href="http://www.continuousphysics.com/Bullet/phpBB2/viewtopic.php?t=1033" class="postlink">http://www.continuousphysics.com/Bullet ... php?t=1033</a><br><a href="http://www.continuousphysics.com/Bullet/phpBB2/viewtopic.php?t=1124" class="postlink">http://www.continuousphysics.com/Bullet ... php?t=1124</a><br><br>Sorry, but I have sometimes a hard time to follow you...<br><br><br><br>Cheers,<br>-Dirk<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=14">Dirk Gregorius</a> — Wed May 30, 2007 5:59 pm</p><hr />
]]></content>
	</entry>
	</feed>
