<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Calling all mathematicians</title>
	<atom:link href="http://blogs.gnome.org/hughsie/2009/01/21/calling-all-mathematicians/feed/" rel="self" type="application/rss+xml" />
	<link>http://blogs.gnome.org/hughsie/2009/01/21/calling-all-mathematicians/</link>
	<description>Blog about geeky stuff</description>
	<lastBuildDate>Sun, 29 Jan 2012 09:38:55 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Jud</title>
		<link>http://blogs.gnome.org/hughsie/2009/01/21/calling-all-mathematicians/comment-page-1/#comment-970</link>
		<dc:creator>Jud</dc:creator>
		<pubDate>Tue, 27 Jan 2009 05:19:53 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/hughsie/?p=302#comment-970</guid>
		<description>So, once you can do this correction factor math voodoo...

How exactly does that aid the end user?  I see the explanation up above of battery chemistry problems, yes, but how does this math actually help?

For example...can it be used to re-correct the battery life-time estimations to actually be consistently linear?  Ex., on an old battery, it doesn&#039;t claim &quot;100%, 4 hours remaining&quot;, but truthfully &quot;100%, 45 minutes (age-corrected) remaining&quot;?

And, things like &quot;25% life&quot; remaining would be consistent (here, about 11 minutes).

Or at least, that&#039;s what I would hope this would be used for.  It would be fantastically real-world useful.</description>
		<content:encoded><![CDATA[<p>So, once you can do this correction factor math voodoo&#8230;</p>
<p>How exactly does that aid the end user?  I see the explanation up above of battery chemistry problems, yes, but how does this math actually help?</p>
<p>For example&#8230;can it be used to re-correct the battery life-time estimations to actually be consistently linear?  Ex., on an old battery, it doesn&#8217;t claim &#8220;100%, 4 hours remaining&#8221;, but truthfully &#8220;100%, 45 minutes (age-corrected) remaining&#8221;?</p>
<p>And, things like &#8220;25% life&#8221; remaining would be consistent (here, about 11 minutes).</p>
<p>Or at least, that&#8217;s what I would hope this would be used for.  It would be fantastically real-world useful.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: hughsie</title>
		<link>http://blogs.gnome.org/hughsie/2009/01/21/calling-all-mathematicians/comment-page-1/#comment-969</link>
		<dc:creator>hughsie</dc:creator>
		<pubDate>Mon, 26 Jan 2009 08:57:51 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/hughsie/?p=302#comment-969</guid>
		<description>Wow.</description>
		<content:encoded><![CDATA[<p>Wow.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Goran Rakic</title>
		<link>http://blogs.gnome.org/hughsie/2009/01/21/calling-all-mathematicians/comment-page-1/#comment-968</link>
		<dc:creator>Goran Rakic</dc:creator>
		<pubDate>Mon, 26 Jan 2009 06:24:32 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/hughsie/?p=302#comment-968</guid>
		<description>Screenshot: http://goranrakic.com/tmp/bezier_spline.png</description>
		<content:encoded><![CDATA[<p>Screenshot: <a href="http://goranrakic.com/tmp/bezier_spline.png" rel="nofollow">http://goranrakic.com/tmp/bezier_spline.png</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Goran Rakic</title>
		<link>http://blogs.gnome.org/hughsie/2009/01/21/calling-all-mathematicians/comment-page-1/#comment-967</link>
		<dc:creator>Goran Rakic</dc:creator>
		<pubDate>Mon, 26 Jan 2009 06:22:24 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/hughsie/?p=302#comment-967</guid>
		<description>http://goranrakic.com/tmp/bezier_spline.c

Compile with:
   gcc -o cairo `pkg-config --cflags --libs gtk+-2.0 gsl` cairo.c

It is using GNU GSL for solving linear system using LU decomposition. You can use any other LU solver instead.

If line should not pass through data points you should use Least Square Fitting using Bezier polynomials instead of Spline Interpolation. It&#039;s not very different (curve start/end points are then also unknowns and you get additional linear equations from grad( Sum( Xi-B(Xi) ) = 0).</description>
		<content:encoded><![CDATA[<p><a href="http://goranrakic.com/tmp/bezier_spline.c" rel="nofollow">http://goranrakic.com/tmp/bezier_spline.c</a></p>
<p>Compile with:<br />
   gcc -o cairo `pkg-config &#8211;cflags &#8211;libs gtk+-2.0 gsl` cairo.c</p>
<p>It is using GNU GSL for solving linear system using LU decomposition. You can use any other LU solver instead.</p>
<p>If line should not pass through data points you should use Least Square Fitting using Bezier polynomials instead of Spline Interpolation. It&#8217;s not very different (curve start/end points are then also unknowns and you get additional linear equations from grad( Sum( Xi-B(Xi) ) = 0).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Goran Rakic</title>
		<link>http://blogs.gnome.org/hughsie/2009/01/21/calling-all-mathematicians/comment-page-1/#comment-966</link>
		<dc:creator>Goran Rakic</dc:creator>
		<pubDate>Sat, 24 Jan 2009 18:27:08 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/hughsie/?p=302#comment-966</guid>
		<description>Ok, it&#039;s done ;)

See: http://dodaj.rs/f/t/10O/2RENgbw0/bezier.png

Missing equations for boundary conditions are P1 = X1, Qn-1 = Xn (making function constant in end points). Unfortunately linear system is not upper triangular (as I first thought) but it can be solved by inverting matrix.

I don&#039;t have code for that, I&#039;ve just copy-pasted values from octave to C source. Tell me if you need additional help.</description>
		<content:encoded><![CDATA[<p>Ok, it&#8217;s done <img src='http://blogs.gnome.org/hughsie/wp-content/mu-plugins/tango-smilies/tango/face-wink.png' alt=';)' class='wp-smiley' /> </p>
<p>See: <a href="http://dodaj.rs/f/t/10O/2RENgbw0/bezier.png" rel="nofollow">http://dodaj.rs/f/t/10O/2RENgbw0/bezier.png</a></p>
<p>Missing equations for boundary conditions are P1 = X1, Qn-1 = Xn (making function constant in end points). Unfortunately linear system is not upper triangular (as I first thought) but it can be solved by inverting matrix.</p>
<p>I don&#8217;t have code for that, I&#8217;ve just copy-pasted values from octave to C source. Tell me if you need additional help.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Søren Hauberg</title>
		<link>http://blogs.gnome.org/hughsie/2009/01/21/calling-all-mathematicians/comment-page-1/#comment-965</link>
		<dc:creator>Søren Hauberg</dc:creator>
		<pubDate>Sat, 24 Jan 2009 16:20:40 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/hughsie/?p=302#comment-965</guid>
		<description>Ahh, I didn&#039;t notice the last point either. The implementation I suggested would be less sensitive to this, but not much. If this is just a single outlier you could probably fix this using median filtering, but if it is the general trend, then the curve is basically correct.</description>
		<content:encoded><![CDATA[<p>Ahh, I didn&#8217;t notice the last point either. The implementation I suggested would be less sensitive to this, but not much. If this is just a single outlier you could probably fix this using median filtering, but if it is the general trend, then the curve is basically correct.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Goran Rakic</title>
		<link>http://blogs.gnome.org/hughsie/2009/01/21/calling-all-mathematicians/comment-page-1/#comment-964</link>
		<dc:creator>Goran Rakic</dc:creator>
		<pubDate>Sat, 24 Jan 2009 15:28:03 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/hughsie/?p=302#comment-964</guid>
		<description>Ok, what I am trying to do is to use piecewise Bezier cube curve for spline interpolation between two data points.

I&#039;ve got some math done to calculate control points in order to have continuity of first derivates (Pn+1 + Qn = 2Xn+1, Qn+1 + 2Qn = Pn + 2Pn+1 where Xn are data points and Pn and Qn first and second control point for Bezier curve on [Xn, Xn+1]).

Now I have to figure out how to deparametrize Bezier cube curve equation (I don&#039;t remember how to do this anymore :( ) and calculate partial derivates dx, dy at first and last data point which will give me two missing linear equation for control points.

Linear system is upper triangular so solving will be very fast and Bezier curves are nice for drawing too.

Does anybody have better suggestion?</description>
		<content:encoded><![CDATA[<p>Ok, what I am trying to do is to use piecewise Bezier cube curve for spline interpolation between two data points.</p>
<p>I&#8217;ve got some math done to calculate control points in order to have continuity of first derivates (Pn+1 + Qn = 2Xn+1, Qn+1 + 2Qn = Pn + 2Pn+1 where Xn are data points and Pn and Qn first and second control point for Bezier curve on [Xn, Xn+1]).</p>
<p>Now I have to figure out how to deparametrize Bezier cube curve equation (I don&#8217;t remember how to do this anymore <img src='http://blogs.gnome.org/hughsie/wp-content/mu-plugins/tango-smilies/tango/face-sad.png' alt=':(' class='wp-smiley' />  ) and calculate partial derivates dx, dy at first and last data point which will give me two missing linear equation for control points.</p>
<p>Linear system is upper triangular so solving will be very fast and Bezier curves are nice for drawing too.</p>
<p>Does anybody have better suggestion?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Goran Rakic</title>
		<link>http://blogs.gnome.org/hughsie/2009/01/21/calling-all-mathematicians/comment-page-1/#comment-963</link>
		<dc:creator>Goran Rakic</dc:creator>
		<pubDate>Sat, 24 Jan 2009 05:20:41 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/hughsie/?p=302#comment-963</guid>
		<description>See: http://dodaj.rs/f/C/10s/38wkgiCn/--1.png
Sometimes it is better to leave everything and go to sleep. :)</description>
		<content:encoded><![CDATA[<p>See: <a href="http://dodaj.rs/f/C/10s/38wkgiCn/--1.png" rel="nofollow">http://dodaj.rs/f/C/10s/38wkgiCn/&#8211;1.png</a><br />
Sometimes it is better to leave everything and go to sleep. <img src='http://blogs.gnome.org/hughsie/wp-content/mu-plugins/tango-smilies/tango/face-smile.png' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: engla</title>
		<link>http://blogs.gnome.org/hughsie/2009/01/21/calling-all-mathematicians/comment-page-1/#comment-962</link>
		<dc:creator>engla</dc:creator>
		<pubDate>Sat, 24 Jan 2009 01:16:07 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/hughsie/?p=302#comment-962</guid>
		<description>seeing that last point in the corner makes more sense out of it.. your code seems to do a continuation at the end; so that the last points are weighted as if it continues constantly at the level of the last point after it.. it just can&#039;t work, since you expect one thing and code another; for example even wrapping (mirroring) at the end would work better.</description>
		<content:encoded><![CDATA[<p>seeing that last point in the corner makes more sense out of it.. your code seems to do a continuation at the end; so that the last points are weighted as if it continues constantly at the level of the last point after it.. it just can&#8217;t work, since you expect one thing and code another; for example even wrapping (mirroring) at the end would work better.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Goran Rakic</title>
		<link>http://blogs.gnome.org/hughsie/2009/01/21/calling-all-mathematicians/comment-page-1/#comment-961</link>
		<dc:creator>Goran Rakic</dc:creator>
		<pubDate>Sat, 24 Jan 2009 00:50:13 +0000</pubDate>
		<guid isPermaLink="false">http://blogs.gnome.org/hughsie/?p=302#comment-961</guid>
		<description>hughsie, I don&#039;t see why line should not go through all data points if points are correct values? 

I don&#039;t think it is possible to use global smoothing and to have line not going in between last two points (I missed the top-right one before).

You can try some window function magic (I don&#039;t have any experience on those) but think about interpolation again.</description>
		<content:encoded><![CDATA[<p>hughsie, I don&#8217;t see why line should not go through all data points if points are correct values? </p>
<p>I don&#8217;t think it is possible to use global smoothing and to have line not going in between last two points (I missed the top-right one before).</p>
<p>You can try some window function magic (I don&#8217;t have any experience on those) but think about interpolation again.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
<!-- This Quick Cache file was built for (  blogs.gnome.org/hughsie/2009/01/21/calling-all-mathematicians/feed/ ) in 1.23380 seconds, on Feb 10th, 2012 at 10:41 am UTC. -->
<!-- This Quick Cache file will automatically expire ( and be re-built automatically ) on Feb 10th, 2012 at 11:41 am UTC -->
