<?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/1012" />

	<title>Real-Time Physics Simulation Forum</title>
	
	<link href="https://pybullet.org/Bullet/phpBB3/index.php" />
	<updated>2007-03-05T19:34:23+00:00</updated>

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

		<entry>
		<author><name><![CDATA[Dirk Gregorius]]></name></author>
		<updated>2007-03-05T19:34:23+00:00</updated>

		<published>2007-03-05T19:34:23+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=3745#p3745</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=3745#p3745"/>
		<title type="html"><![CDATA[Confusion about sequential impulses method]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=3745#p3745"><![CDATA[
<blockquote class="uncited"><div>I've also been wondering how the convergence would be effected by using a solver loop like: </div></blockquote>This is called Jacobi iteration and has worse convergence the Gauss-Seidel. Look for matrix splitting (e.g. in Kenny Phd). You have basically Jacobi, Gauss-Seidel and SOR.<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=14">Dirk Gregorius</a> — Mon Mar 05, 2007 7:34 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Dirk Gregorius]]></name></author>
		<updated>2007-03-05T19:22:33+00:00</updated>

		<published>2007-03-05T19:22:33+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=3743#p3743</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=3743#p3743"/>
		<title type="html"><![CDATA[Confusion about sequential impulses method]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=3743#p3743"><![CDATA[
In the first thread you mention, I speak abut the convergence between normal Gauss-Seidel and Block Gauss-Seidel. The Later has better convergence (about Sqrt(2) ). Think of a spherical constraint, if you satisfy it en block you have the correct solution after the first iteration. But I admit that I didn't mademyself very clear in the first thread. So iterative blockwise Gauss Seidel has superior convergence as I also state in the second thread. <br><br>In the first thread I take the equation and transform it a bit:<br><br>J*W*JT*lambda = -ERP * C / dt2 - J*( v/dt + w*f_ext ) <br><br>Here lambda is a force. Of course you can multiply the whole equation by dt and get<br><br>J*W*JT*(lambda*dt) = -ERP * C / dt - J*( v + w*f_ext*dt) <br><br><br>Here you can basically see the equivalence between PGS and iterative impulses.<br><br>And finally what you describy there is identical to Erin method<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=14">Dirk Gregorius</a> — Mon Mar 05, 2007 7:22 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[John McCutchan]]></name></author>
		<updated>2007-03-05T02:43:15+00:00</updated>

		<published>2007-03-05T02:43:15+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=3734#p3734</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=3734#p3734"/>
		<title type="html"><![CDATA[Confusion about sequential impulses method]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=3734#p3734"><![CDATA[
I've also been wondering how the convergence would be effected by using a solver loop like:<br><div class="codebox"><p>Code: </p><pre><code>for i = 0; i &lt; ITERATIONS; i++      foreach joint J:            P[J] = calculate_impulses (J);      foreach joint J:            apply impulse P[J] to bodies</code></pre></div><p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=148">John McCutchan</a> — Mon Mar 05, 2007 2:43 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[John McCutchan]]></name></author>
		<updated>2007-03-05T02:39:56+00:00</updated>

		<published>2007-03-05T02:39:56+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=3733#p3733</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=3733#p3733"/>
		<title type="html"><![CDATA[Confusion about sequential impulses method]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=3733#p3733"><![CDATA[
I'm currently implementing a 3D sequential impulses constraint system.<br><br>This is what I'm doing:<br><br>K = J * W * JT<br>B = -beta * error - J * v;<br><br>lambda = K^-1 * B;<br><br>old_lambda = accumulated_lambda<br>accumulated_lambda += lambda<br>accumulated_lambda.clamp (lo, hi)<br>lambda = accumulated_lambda - old_lambda<br><br>P = JT * lambda<br><br>apply P to bodies.<br><br><br><br>In this thread: <a href="http://www.continuousphysics.com/Bullet/phpBB2/viewtopic.php?t=763&amp;sid=6f2fc7418d2213ce8bd957ddfe218741" class="postlink">http://www.continuousphysics.com/Bullet ... ddfe218741</a><br><br>Dirk says that this is a slower and worse convergence than PGS<br><br>but in this thread: <a href="http://www.continuousphysics.com/Bullet/phpBB2/viewtopic.php?t=478&amp;sid=34dce171a1717f61ba373befdd9aea48" class="postlink">http://www.continuousphysics.com/Bullet ... efdd9aea48</a><br><br>Dirk says that this method is equivalent to a block Gauss seidel solver  and has better convergence than PGS<br><br>In the first thread dirk is talking about solving for lambda*dt instead of just<br>for lambda.<br><br>I'd appreciate some clarification.<br><br>Also, I'm wondering if this is equivalent to erin catto's sequential impulses method?<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=148">John McCutchan</a> — Mon Mar 05, 2007 2:39 am</p><hr />
]]></content>
	</entry>
	</feed>
