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

	<title>Real-Time Physics Simulation Forum</title>
	
	<link href="https://pybullet.org/Bullet/phpBB3/index.php" />
	<updated>2006-05-22T00:41:05+00:00</updated>

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

		<entry>
		<author><name><![CDATA[jiangwei]]></name></author>
		<updated>2006-05-22T00:41:05+00:00</updated>

		<published>2006-05-22T00:41:05+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1055#p1055</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1055#p1055"/>
		<title type="html"><![CDATA[Why is stacking unstable?]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1055#p1055"><![CDATA[
My physics engine used PGS to solve the LCP too,this undesired tangent velocity is also exist in my physics engine <img class="smilies" src="https://pybullet.org/Bullet/phpBB3/images/smilies/icon_sad.gif" width="15" height="15" alt=":(" title="Sad">   <br>i find OPENTISSUE also have this problem,but it build a first order system to correct this error.<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=361">jiangwei</a> — Mon May 22, 2006 12:41 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Erin Catto]]></name></author>
		<updated>2006-05-19T21:02:29+00:00</updated>

		<published>2006-05-19T21:02:29+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1051#p1051</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1051#p1051"/>
		<title type="html"><![CDATA[Why is stacking unstable?]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1051#p1051"><![CDATA[
It should be easy to eliminate the penetration depth as the problem. You should be able to run a stable (no jitter) simulation with the penetration bias set to zero.<br><br>In Box2D again, change line 109 from:<br><br>c-&gt;bias = -0.1f * inv_dt * Min(0.0f, c-&gt;separation + k_allowedPenetration);<br><br>to<br><br>c-&gt;bias = 0.0f;<br><br>Run it and press 3 to see stacking without penetration compensation. It actually works ok. And there is no jitter.<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=12">Erin Catto</a> — Fri May 19, 2006 9:02 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[dog]]></name></author>
		<updated>2006-05-19T16:41:33+00:00</updated>

		<published>2006-05-19T16:41:33+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1047#p1047</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1047#p1047"/>
		<title type="html"><![CDATA[Why is stacking unstable?]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1047#p1047"><![CDATA[
The lemke solver is more forgiving with poor penetration depth calculations. You might be looking in the wrong place for your problem.<br><br>It is more likely that you have a typo, or numerical degeneracy, in your friction tangent generation - that's one place where I got this behaviour. Also, check that you are clamping correctly with the tangential components.<br><br>Both Erin's awesome presentation and Bullet have good example code.<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=60">dog</a> — Fri May 19, 2006 4:41 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[FD]]></name></author>
		<updated>2006-05-19T07:37:32+00:00</updated>

		<published>2006-05-19T07:37:32+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1045#p1045</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1045#p1045"/>
		<title type="html"><![CDATA[Why is stacking unstable?]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1045#p1045"><![CDATA[
jiangwei, I do use compensation, and there's no interpenetration. It collapses due to some velocity tangental to contact normal ditrection, that drives the bodies off each other.<br><br>Erin, I'm going to play with the warm starting after I solve the shit with the stacking. Thank you for the link, but it's not the case. The non-penetration constraint is satisfied to any reasonable precision, but there appears an odd tangental velocity, which doesn't appear in case of Lemke LCP solver. Isn't such a behavior common?<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=525">FD</a> — Fri May 19, 2006 7:37 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[jiangwei]]></name></author>
		<updated>2006-05-19T05:31:27+00:00</updated>

		<published>2006-05-19T05:31:27+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1044#p1044</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1044#p1044"/>
		<title type="html"><![CDATA[Why is stacking unstable?]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1044#p1044"><![CDATA[
You could use error reduction parameter as OPENTISSUE and ODE did, Add Kerp * 1/delta t * -penetration distance  to term b,It can make your box stack stable in vertical direction.<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=361">jiangwei</a> — Fri May 19, 2006 5:31 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Erin Catto]]></name></author>
		<updated>2006-05-19T00:48:55+00:00</updated>

		<published>2006-05-19T00:48:55+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1042#p1042</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1042#p1042"/>
		<title type="html"><![CDATA[Why is stacking unstable?]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1042#p1042"><![CDATA[
I recommend caching contact points and warm starting the PGS. But before you do that, make sure this case works:<br><br>1) 2 boxes vertically stacked (1m x 1m x 1m).<br>2) 20 PGS iterations<br>3) Gravity = 10<br>4) 1/60 second time step<br><br>That should be fairly stable.<br><br>If you want to look into contact caching and warm starting, you can look at<br><br><a href="http://www.gphysics.com/files/GDC2006_ErinCatto.zip" class="postlink">http://www.gphysics.com/files/GDC2006_ErinCatto.zip</a><br><br>The Box2D demo has warm starting enabled by default. To see the behavior without warm starting, comment out lines 69 and 70 in Arbiter.cpp:<br>c-&gt;accumulatedNormalImpulse = cOld-&gt;accumulatedNormalImpulse;<br>c-&gt;accumulatedTangentImpulse = cOld-&gt;accumulatedTangentImpulse;<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=12">Erin Catto</a> — Fri May 19, 2006 12:48 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[FD]]></name></author>
		<updated>2006-05-18T21:33:00+00:00</updated>

		<published>2006-05-18T21:33:00+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1039#p1039</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1039#p1039"/>
		<title type="html"><![CDATA[Why is stacking unstable?]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1039#p1039"><![CDATA[
Hi all!<br><br>I've been making a physics-engine for many months, and now I'm at the stage when I'm converting everything to PGS.<br><br>I used Lemke LCP solver, and I managed to create quite a good implementation, that is almost as fast as PGS (including Mixed LCP -&gt; Common LCP transform) when several objects are in the simulation. Unfortunately, Lemke's speed decreases dramatically with the increase of the system's dimention (I guess O(4)). So, my only choice was to convert to PGS.<br><br> But with PGS I've first seen such an effect as unstable stacking. 3 objects placed on top of each other show some tangental velocity and the stack collapses. When I used Lemke, nothing of the kind was observed. Stacks of any size used to be absolutely stable. <br><br>My question might sound naive: what's the nature of this behavior? Why does the tangental velocity appear? And, of course, waht to do?<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=525">FD</a> — Thu May 18, 2006 9:33 pm</p><hr />
]]></content>
	</entry>
	</feed>
