<?xml version="1.0" encoding="iso-8859-1"?>
<rss version="2.0">
    <channel>
    <title>Circuit Broken</title>
    <link>http://bdsatish.in/CircuitBroken/</link>
    <description>... and I know how to fix it !</description>
    <language>en-us</language>           
    <generator>Nucleus CMS v3.50</generator>
    <copyright>&#169;</copyright>             
    <category>Weblog</category>
    <docs>http://backend.userland.com/rss</docs>
    <image>
        <url>http://bdsatish.in/CircuitBroken/skins/bdsatish/animated_favicon1.gif</url>
        <title>Circuit Broken</title>
        <link>http://bdsatish.in/CircuitBroken/</link>
    </image>
    <item>
    <title>Software : : Communications and Signal Processing</title>
    <author>bdsatish</author>
    <link>xml-rss2.php?itemid=22</link>
    <description><![CDATA[<p>Happy Independence Day ! Celebrating 63 years of Indian Independence! </p><p>Of late, I've been doing a lot of programming in <a href="http://en.wikipedia.org/wiki/Fortran_2003#Fortran_2003" target="_blank">Fortran</a>. No, it's not a dead language. Modern Fortran is a fully object-oriented language with array-like operations built into the language itself, making it more like "compiled Matlab". <a href="http://fortranwiki.org/fortran/show/Fortran+2003" target="_blank">Fortran Wiki</a> is an excellent starting point.</p><p>That said, I have written up a few thousand lines of code for Communications and Signal Processing routines. The project is licensed under GNU General Public License. So, it's free and open-source software. The project is hosted at <a href="http://bitbucket.org/bdsatish/comsigproc/" target="_blank">BitBucket</a>. I've tested it on GNU/Linux (Ubuntu) and Windows/Cygwin. It's nice to know that my software is equivalent to 40,000 US dollars of development effort. Wow ! Thanks to <a href="http://www.ohloh.net/p/comsigproc">Ohloh</a> for the metrics, I've added a badge on the left sidebar. </p>]]></description>
    <category>Software</category>
    <comments>xml-rss2.php?itemid=22</comments>
    <pubDate>Sun, 15 Aug 2010 06:20:34 +1100</pubDate>
</item><item>
    <title>Language : : Writing Chinese in Devanagari</title>
    <author>bdsatish</author>
    <link>xml-rss2.php?itemid=21</link>
    <description><![CDATA[<p>It has been six weeks in <a href="http://en.wikipedia.org/wiki/Hangzhou">Hangzhou</a>,  China. This has given me enough time to decipher the <a href="http://en.wikipedia.org/wiki/Standard_Mandarin">Mandarin</a> language.   <a href="http://en.wikipedia.org/wiki/People%27s_Republic_of_China">Mainland China</a> uses <a href="http://en.wikipedia.org/wiki/Simplified_Chinese">Simplified Chinese</a>. Chinese cannot be  <a href="http://en.wikipedia.org/wiki/Transliteration">transliterated</a> but only  <a href="http://en.wikipedia.org/wiki/Transcription_(linguistics)">transcribed</a>. What makes Chinese so different are the following facts:</p> <ol> <li>There is no concept of vowels (a,e,i,o,u) or consontants. It's all about <a href="http://www.99mychinese.com/chinese/chinese-pinyin/54-chinese-pinyin-initials-and-finals">initials, finals</a> and <a href="http://people.wku.edu/shizhen.gao/Chinese101/pinyin/tones.htm">tones</a>.</li><li>The same character can correspond to two (or more) different sounds.  For example, &#35328; can be transcribed as <i>yán</i> or <i>yín</i> or <i>yàn</i></li> <li>The same sound can correspond to two (or more) different characters. For example, <i>t&#257;</i> can be written as &#20182; or &#22905; or &#36367; </li> </ol><p>Here, I have come up with a scheme to pronounce Chinese as closely as possible by the Indian tongue. It's easy because Indian languages (say Hindi or Kannada) are "phonetic" -- we pronounce the way we write. One letter, one sound.</p><p>The rest of the article assumes that you have some knowledge of <a href="http://en.wikipedia.org/wiki/Pinyin">Pinyin</a>, <a href="http://en.wikipedia.org/wiki/Devanagari">Devanagari</a>, <a href="http://en.wikipedia.org/wiki/IPA">International Phonetic Alphabet</a>, <a href="http://en.wikipedia.org/wiki/Vedic_accent">Vedic Accent</a>, <a href="http://en.wikipedia.org/wiki/Sanskrit#Phonology">Sanskrit phonology</a> and <a href="http://en.wikipedia.org/wiki/Mandarin_phonology">Mandarin phonology</a>. Read on <a href="http://bdsatish.in/CircuitBroken/index.php?itemid=21">full article here</a> !</p><br />
]]></description>
    <category>Languages</category>
    <comments>xml-rss2.php?itemid=21</comments>
    <pubDate>Thu, 3 Jun 2010 18:04:18 +1100</pubDate>
</item><item>
    <title>Software : : Fixed-point Math for Embedded Systems, Part 2</title>
    <author>bdsatish</author>
    <link>xml-rss2.php?itemid=20</link>
    <description><![CDATA[<p>As mentioned in my <a href="http://bdsatish.in/CircuitBroken/index.php?itemid=19">previous post </a>, <a href="http://en.wikipedia.org/wiki/Fixed-point_arithmetic">Fixed-point Arithmetic</a> is proving more and more interesting. Ahem, I created an Open Source project at Bitbucket ! Here's the link : <a href="http://bitbucket.org/bdsatish/fixedpointmath/">Fixed-Point Math Library</a>. You can <a href="http://bitbucket.org/bdsatish/fixedpointmath/get/tip.zip">download the latest version </a> of software for free and try it out. I've created versions 0.1, 0.2 and 0.3, but it's always suggested to use the 'TIP'</p><p>I managed to code a thousand lines in just three days (Happy Easter !) over the long weekend. So the following, features are complete: </p> <ol><li>Conversions among fixed-point, floating-point and ASCII strings (with or without rounding) </li><li>Extracting integer-part and fractional-part of Q-number, absolute value &amp; saturation </li><li>Add, Subtract, Multiply, Divide (different versions for dealing with rounding and saturation in different <a href="http://en.wikipedia.org/wiki/Q_%28number_format%29">Q-formats</a> available) </li><li>Fixed-point Square-root and Inverse Sqrt</li></ol><br />
<p>One more feature I added are unit-tests -- as and when I implement new code, <a href="http://cutest.sourceforge.net/">CuTesT </a> will automatically generate template for my test suite. Currently there are about 18 test suites, take a look at the <code>test/</code> <br />
folder in the downloaded zip. Of course, all of them are passing !</p><br />
<br />
]]></description>
    <category>Software</category>
    <comments>xml-rss2.php?itemid=20</comments>
    <pubDate>Mon, 5 Apr 2010 16:49:24 +1100</pubDate>
</item><item>
    <title>Software : : Fixed-point Math for Embedded Systems, Part 1</title>
    <author>bdsatish</author>
    <link>xml-rss2.php?itemid=19</link>
    <description><![CDATA[<p>Hi there ! As a DSP programmer, I often encounter this situation: I need to do a lot of math, but the underlying CPU doesn't have a floating-point unit at all ! So, the general technique used is <a href="http://en.wikipedia.org/wiki/Fixed-point_arithmetic">Fixed-point Arithmetic</a>. The basic idea is that every real number, like 3.14159, is mapped to an integer. We all know that integer arithmetic is faster than floating-point arithmetic. For ex, 32-bit integer multiply (MUL EDX) takes about 5 clock cycles on a 80x86, whereas 32-bit IEEE float multiply (FMUL) takes over 10 clock cycles. </p> <p>There you are, I rolled up my sleeves and wrote my own C library for dealing with Q-formats. There is basic support for conversion from float-to-fixed, addition, saturation, etc. I will be updating it soon with algorithms for sqrt( ), sin( ), cos( ) and finally <a href="http://en.wikipedia.org/wiki/Fast_Fourier_transform">FFT</a>. The current version of the software is just a header file. A sample test program is also attached. You can download the software here: <a href="http://www.bdsatish.in/software/FixedPointMath.zip">FixedPointMathLibrary</a>. The software is licensed under the <a href="http://www.opensource.org/licenses/NOSL3.0.html">Non-Profit Open Software License 3.0.</a> </p>]]></description>
    <category>Software</category>
    <comments>xml-rss2.php?itemid=19</comments>
    <pubDate>Tue, 16 Mar 2010 18:28:33 +1100</pubDate>
</item><item>
    <title>Language :: Catch up with News in Sanskrit</title>
    <author>bdsatish</author>
    <link>xml-rss2.php?itemid=18</link>
    <description><![CDATA[<p>In this post, I'll introduce you to web resources that help you to catch up with the news in Sanskrit, free of cost, everyday.</p><p>1. <strong><a href="http://allindiaradio.org/">All India Radio (AIR)</a> </strong>  <br />Since the 1980s, Indians are addicted to two things - the television and the radio, or more precisely, <a href="http://www.ddinews.gov.in/"> Doordarshan </a>and <a href="http://en.wikipedia.org/wiki/All_India_Radio">Akashavani</a>, as they were then called.If you think you are missing those good old times, here's some solace.The AIR has been broadcasting news in <a href="http://www.newsonair.com/nsd_schedule.asp">several languages </a>everyday. You can subscribe to the RSS feed of Sanskrit news through this link: <br /><a href="http://sanskritdocuments.org/news/air_news.xml">http://sanskritdocuments.org/news/air_news.xml </a><br />I use <a href="http://www.google.com/reader">Google Reader</a> which neatly streams the MP3 right inside the browser. If youchoose to listen regularly, just <a href="http://sanskritdocuments.org/news/newslisteners.html">register your name on this link</a>. Of course, I am the 18-th on the list !You can find all previous archives and the news transcripts at <a href="http://sanskritdocuments.org/sanskritnews.html">Sanskrit Documents </a></p><p>2. <strong><a href="http://sudharma.epapertoday.com/">Sudharma -- World's only Sanskrit Newspaper</a></strong> <br/><a href="http://en.wikipedia.org/wiki/Sudharma">Sudharma</a> was started in 1970 by a Mysorean, Varadaraja Iyengar. As such, you'll find a lot of local news, in and around Bangalore.This newspaper is struggling for its existence. The least you can do is to spread awareness aboutthis to your friends. You can subscribe to its RSS feeds here: <br /><a href="http://feeds.feedburner.com/sanskritnews">http://feeds.feedburner.com/sanskritnews</a></p><br />
]]></description>
    <category>Languages</category>
    <comments>xml-rss2.php?itemid=18</comments>
    <pubDate>Sun, 31 Jan 2010 11:36:12 +1100</pubDate>
</item><item>
    <title>Software :: One input, Multiple Outputs</title>
    <author>bdsatish</author>
    <link>xml-rss2.php?itemid=14</link>
    <description><![CDATA[<p>There are various document formats in use today: Microsoft Word (*.doc), <a href="http://www.openoffice.org/">Open Office</a> (*.odf), <a href="http://get.adobe.com/reader/">Portable Document Format</a> (*.pdf), XML, HTML, <a href="http://www.docbook.org">Docbook</a>, <a href="http://en.wikipedia.org/wiki/Rich_Text_Format">Rich Text Format</a> (*.rtf), <a href="http://unixhelp.ed.ac.uk/CGI/man-cgi">Unix man pages</a>, GNU <a href="http://en.wikipedia.org/wiki/Troff">N/T/ROFF</a>, GNU <a href="http://en.wikipedia.org/wiki/Info_(Unix)">Info</a>, GNU <a href="http://www.gnu.org/software/texinfo/">Texi</a>, etc. However, the best document format that exists, according to me, is <a href="http://www.latex-project.org/">LaTeX</a>. It has been in use for several decades and has stood the test of time. Nothing can beat LaTeX (or TeX, in general) when it comes to typesetting Mathematics. In this post, I'll give examples of a software converters which accept LaTeX input and convert it to various other output formats. I call this as the principle of "one input, multiple output" -- write once and use it in whatever format you want ! As an example, head over to my <a href="http://www.bdsatish.in/math/channel_estimation/">Channel Estimation</a> article, which was automatically converted from LaTeX to XHTML.</p><p>Don't forget to <a href="http://feeds.feedburner.com/CircuitBroken">subscribe to RSS feed</a>! Read the full article! </p>]]></description>
    <category>Software</category>
    <comments>xml-rss2.php?itemid=14</comments>
    <pubDate>Tue, 26 Jan 2010 20:34:50 +1100</pubDate>
</item><item>
    <title>Signal Proc :: Channel Estimation - I, Maximum Likelihood Estimate</title>
    <author>bdsatish</author>
    <link>xml-rss2.php?itemid=12</link>
    <description><![CDATA[<p>In Signal Processing and Communications, one often has to deal with unknown signals. For example, the wireless channel (air medium) distorts the transmitted signal in so many ways (<a href="http://en.wikipedia.org/wiki/Rayleigh_fading">multipath fading</a>, <a href="http://en.wikipedia.org/wiki/Intersymbol_interference">ISI</a>, etc.) that the receiver has to use its own methods to recover the signal. Generally, such signals are modeled as <a href="http://en.wikipedia.org/wiki/Random_process"> stochastic random processes </a> and statistical methods are used to "demystify" the received waveform. The air medium can be considered to be a time-varying <a href="http://en.wikipedia.org/wiki/FIR_filter">FIR filter</a> and the receiver unit must estimate the properties of this wireless medium.Such techniques are called <em>Channel Estimation</em>  methods.</p><p>I have begun a series of articles, in which I'll explain the various methods of channel estimation. In this post, I'll explain a method called as <a href="http://en.wikipedia.org/wiki/Maximum_likelihood">Maximum Likelihood Estimate.</a> I give an example on how to estimate the mean and variance of the wireless channel. To start with, I consider a time-invariant (<a href="http://en.wikipedia.org/wiki/LTI_system_theory"></a>) system. Later, we'll consider time-varying systems. This article involves so much math that HTML can't cope with it. I used LaTeX and converted it to pdf. <a href="http://www.bdsatish.in/math/channel_estimation/channel_estimation.pdf">You can download it here.</a></p><p>Please comment if you have anything to ask !</p><br />
<br />
]]></description>
    <category>Signal Proc</category>
    <comments>xml-rss2.php?itemid=12</comments>
    <pubDate>Sun, 24 Jan 2010 20:50:31 +1100</pubDate>
</item><item>
    <title>Math :: Sloane&apos;s Integer Sequences ( in Kannada ! )</title>
    <author>bdsatish</author>
    <link>xml-rss2.php?itemid=10</link>
    <description><![CDATA[<p> The <a href="http://www.research.att.com/~njas/sequences/index.html"> Online Encyclopedia of Integer Sequences</a>  is a well-known place on the web. It is maintained by the famous mathematician <a href="http://en.wikipedia.org/wiki/Neil_Sloane"> Neil Sloane</a>. Each sequence has a unique ID, for example <a href="http://www.research.att.com/~njas/sequences/A000796">A000796</a> gives the digits of <em>pi</em>. The format is <b>Axxxxxx</b> where the x's represent a six-digit number.</p>   <p>I had an excellent opportunity to interact with Sloane over email. We have one thing in common - love for math and languages. I volunteered to translate his homepage in <a href="http://en.wikipedia.org/wiki/Kannada">Kannada</a>. Click here for  <a href="http://www.research.att.com/njas/sequences/?language=kannada">OEIS in Kannada</a>. He has put up my name on his website, in the <a href="http://www.research.att.com/~njas/sequences/translate.html#THANKS">Acknowledments</a> section. Scroll down to see my name ! Thanks Dr. Sloane !<br />
</p><br />
]]></description>
    <category>Math</category>
    <comments>xml-rss2.php?itemid=10</comments>
    <pubDate>Tue, 19 Jan 2010 21:31:22 +1100</pubDate>
</item><item>
    <title>Math :: Special Functions Download</title>
    <author>bdsatish</author>
    <link>xml-rss2.php?itemid=8</link>
    <description><![CDATA[<p>A <em><a href="http://functions.wolfram.com/" target="_blank">Special Function</a></em> is a function which is quite different from elementary functions (like the trig functions). Often, it is named after a mathematician who first discovered its properties. For example, the <a href="http://mathworld.wolfram.com/BesselFunction.html" target="_blank">Bessel functions</a> and the <a href="http://mathworld.wolfram.com/LegendrePolynomial.html" target="_blank">Legendre polynomials</a>. There are over a hundred special functions in mathematics. Most of them can be formulated as solutions to differential equations. I first got familiar with them while browsing the <em><a href="http://reference.wolfram.com/mathematica/guide/SpecialFunctions.html" target="_blank">Mathematica</a></em>  book. </p> <p> Nowadays, I use Python for most of my numerical computing. The excellent <a href="http://www.scipy.org/" target="_blank">SciPy</a> library (Scientific Python) includes a package on special functions: "from <a href="http://www.scipy.org/SciPyPackages/Special" target="_blank">scipy.special</a> import * ". Two years ago, I had written an introductory article about Special Functions. You can download it for free here: <a href="http://bdsatish.in/pdf/SpecialFunc.pdf">SpecialFunc.pdf [240 KB]</a>. I wrote the article in LaTeX and used pdfTex for typesetting. </p> <p> Feel free to comment on the article ! </p><br />
<br />
   ]]></description>
    <category>Math</category>
    <comments>xml-rss2.php?itemid=8</comments>
    <pubDate>Sun, 3 Jan 2010 13:21:01 +1100</pubDate>
</item><item>
    <title>Happy New Year !</title>
    <author>bdsatish</author>
    <link>xml-rss2.php?itemid=3</link>
    <description><![CDATA[<p>2010 is here ! And my website is up and running, better than ever. <a href="http://nucleuscms.org">Nucleus</a> made my job so easier than I thought. I edited the "skins" and "templates" ; that's it. Ready !</p><p>Yesterday, I missed to explain why my blog is called "<a href="http://www.blog.bdsatish.in">Circuit Broken</a>".  The Internet is basically a network. In my language, it's a <a href="http://en.wikipedia.org/wiki/Electric_circuit" target="_blank">Circuit </a> connecting various components. The components can be a websites, search engines, e-mail clients, blogs and what not. Whenever a part of the circuit breaks, we have an <a href="http://www.tpub.com/neets/book1/chapter3/1-19.htm" target="_blank">Open Circuit</a>. I look upon my blog  as a way to "open" up my mind in to the Circuit. There you have it ! </p>]]></description>
    <category>General</category>
    <comments>xml-rss2.php?itemid=3</comments>
    <pubDate>Fri, 1 Jan 2010 15:32:26 +1100</pubDate>
</item>
  </channel>
</rss>