Unused Cycles

June 14, 2008

Mathematica 6 and Compiz on Kubuntu Hardy

Filed under: GNU/Linux, Mathematics — Tags: , , , , , — Kevin @ 10:13 am

My school offers the software for “anybody who is on the payroll,” and we’re taught to use it pretty heavily in some of our classes (there is even a 1-credit course on Mathematica) so I went ahead and downloaded it from the department. However, even from the start I’d had some troubles. Now I’ll tell you how to fix those.

When I was running Mathematica 5, I had a nasty issue where running Beryl with XGL (on a nasty ATI card, before AIGLX was supported in the fglrx driver) in the background would make my text and most of the graphics transparent. My method of fixing this was to just put a blank terminal in the background. After the new ATI driver with AIGLX support, the problem was fixed, but now it opened three windows at startup, two of which were blank and I couldn’t close. Upgrading to Mathematica 6 brought no relief, and upgrading to Kubuntu 8.04 brought along another problem with fonts – now everything was white, and changing the color would fix it.

So, here’s the fix.

  1. Fixing fonts: Instead of typing “mathematica” into a terminal to start Mathematica 6, try using “mathematica -defaultvisual” which fixed the fonts for me.
  2. Fixing the three popup windows: The bug was reported here, but I’ll go ahead and summarize it to save you the trouble of searching through other people’s comments. First, go to “Edit->Preferences…”, which should pop up the preferences dialog. Click the “Advanced” tab on the top right and right next to “For all other option settings:” click “Open Option Inspector.” Now on the left bar, go to “Notebook Options->Window Properties” and change “Window Frame” to “Generic.” Below is a screenshot of my preferences (click to blow it up).

Click to see larger image

That’s it! Now close Mathematica and restart it to get only one window and visible fonts!

June 11, 2008

What is a mathematical group? (Part 3)

This will be my last post in this little series I’ve started on group theory. Here are parts one and two.

In part one, I defined the terminology needed to identify the axioms for a group. In part two, I gave examples of a group, and began a short taste of what group theory is all about (doing things abstractly). In this part, I’ll giving an only slightly more involved introduction to proofs in group theory, as well as introduce some other so-called “algebraic structures” other than groups.

Previously, I showed that the identity element is unique within a group. Is the same true for an inverse of an element within a group? That is, given an element a within a group, is there only one element a^{-1} such that a^{-1}a=aa^{-1}=e? The claim is:

Theorem: An element a within a group G has a unique inverse.
Proof: Again the argument is by contradiction. Suppose that there are two elements that have this property, b and c. Then


We can define the power of an element in a group, a^n to be \underbrace{aaa\ldots a}_{n\text{ times}} just as expected. We can also define it inductively so that a^n=a^{n-1}a for positive n.

Note that there is nothing in the definition of the group G that states that it is necessary that ab=ba for an a,b\in G. This is, in general, not true. Recall that non-singular matrices under matrix multiplication are a group. But matrix multiplication is not always commutative. A group for which every element commutes with every other element is called abelian. Just a small theorem involving abelian groups is the following:

Theorem: If a^2=e for every element a\in G, then G is abelian.
Proof: We can take two elements a,b so that ab\in G since we’re inside a group. Then by assumption (ab)^2=e. But we also have e=ee=a^2b^2 so that (ab)(ab)=(aa)(bb). Right multiplying by b^{-1} and left multiplying by a^{-1} gives ba=ab, the desired equality.

The theory of groups is much more involved and complicated than just simple theorems that show a certain property such as uniqueness of an element or that one property implies another. For further reading on the topic of groups, try reading about cosets, Lagrange’s Theorem, permutations, and isomorphism of groups. You can also try reading the online textbook that we used for my course in abstract algebra here, though be warned it goes more in depth than the topics presented here – it’s definitely for somebody who is not just mildly interested in the subject.

In closing, I’ll introduce other common algebraic structures without doing anything with them.

Definition: A commutative ring is a set R with two binary operations, + and \ast that has the following properties for every a,b,c\in R:

  1. Additive Commutativity: a+b=b+a
  2. Additive Associativity: (a+b)+c=a+(b+c)
  3. Additive Identity: There exists an element, 0, such that a+0=0+a=a
  4. Additive Inverses: There exists an element -a such that a+(-a)=(-a)+a=0
  5. Multiplicative Commutativity: ab=ba
  6. Multiplicative Associativity: a(bc)=(ab)c
  7. Multiplicative Identity: There exists an element 1 such that 1a=a1=a
  8. Distributivity: a(b+c)=ab+ac

Notice that this definition says that the set is an abelian group under addition, but it is important to note that it is not a multiplicative group (there is no guarantee of a multiplicative inverse). Examples of rings include the non-negative integers with addition and multiplication, rational numbers with addition and multiplication, and the real numbers with addition and multiplication. The set of n\times n real matrices with matrix multiplication and addition do not form a commutative ring since they are not commutative under multiplication. They do, however, form a “non-commutative” ring.

The next definition “fixes” multiplication in a ring so that it is (almost) a multiplicative group.

Definition: A field is a commutative ring where every non-zero element a\in G has a multiplicative inverse.

Of the previous rings identified, only the rational and real numbers are fields.

The last definition I’m going to give will be a familiar one to most physicists (as they’ve almost surely taken a course in linear algebra).

Definition: A vector space over a field F is a set V of elements called vectors together with a binary operation + on V and a function \ast: F\times V\rightarrow V called scalar multiplication (the asterisks is again usually dropped). Given a,b\in F and x,y,z\in V, the following properties hold:

  1. Additive Associativity: (x+y)+z=x+(y+z)
  2. Additive Commutativity: x+y=y+x
  3. Additive Identity: There exists a vector, called 0, such that x+0=x
  4. Additive Inverse: There exists a vector -x such that x+(-x)=(-x)+x=0
  5. Vector Distributivity: a(x+y)=ax+ay
  6. Scalar Distributivity: (a+b)x=ax+bx
  7. Multiplicative Associativity: (ab)x=a(bx)
  8. Multiplicative Identity: Given the multiplicative identity in F, 1x=x

The reader familiar with linear algebra knows that F=\mathbb{C} and V=\mathbb{C}^n is a vector space. Other examples include F=\mathbb{R} and V as the set of all polynomials of degree less than or equal to n.

That’s it for this introduction to abstract algebra. Give me your thoughts if you found it interesting!

(Part 1)(Part 2)

June 4, 2008

What is a mathematical group? (Part 2)

Filed under: Mathematics — Tags: , , , , , — Kevin @ 9:41 pm

In my previous post, I gave the definition of a group. In this post, I will identify some examples of groups. My objective for this post is to show that many different objects (not just numbers) fit the bill for a group, and so it may be easier to prove things for a group abstractly (that is, without any particular group in mind) using just the properties of the definition of a group.

Example 1: As in the previous post, the integers form a group under addition.
Proof: A general property of addition of integers is that the sum of two gives another. The operation can also be taken for granted to be associative. Previously, I identified 0 as the identity element, and the negative of an element to be its inverse.

(Non) Example: The integers under multiplication do not form a group.
Proof: The operation of multiplication is indeed a binary operation, and it is associative. The identity element is 1 because 1x=x1=x for every x\in\mathbb{Z}. However, no element other than 1 itself has an inverse. Indeed, when multiplication is the operation, the inverse of x is 1/x, but the only x for which this is an integer is x=1. Furthermore, 0 does not even have an inverse in any set of numbers since 0x=x0=0\ne 1. Hence (\mathbb{Z},\times) is not a group.

Example 2: To fix the previous problem, consider the set \mathbb{Q}\setminus\left\{0\right\}, that is, the set of all rational numbers (fractions) minus the number 0, with the operation of multiplication. I will leave it to the reader to verify that this does indeed form a group.

Example 3: Consider the set of all n\times n non-singular (that is, invertible) matrices, together with matrix multiplication. The reader familiar with matrix algebra will be able to easily show that these form a group.

Example 4: One can also form groups out of objects that aren’t necessarily numbers. For example, consider the symmetries of an equilateral triangle, as shown below in the picture.

The symmetries of an equilateral triangle

The picture on the left involves flipping the triangle around the axis indicated. The picture on the right involves rotating the triangle, by either 120°, 240°, or 360°. Any of these operations will return an equilateral triangle in the same orientation as the original.

Call rotation by 120° the element \rho, rotation by 240° \rho^2. Clearly, rotation by 360° leaves the triangle unchanged, so let’s call that e, the identity operation. Call the flip furthest left f_1, the middle flip f_2, and the right flip f_3. By labeling the vertices, we can then combine the operations to get a new orientation. For example, a rotation by 120° followed by a rotation by 240° gives a total rotation by 360°. That is, \rho^2\rho=e. Notice that the operations in this notation are applied right to left – that is, first we applied \rho followed by \rho. The set with these operations has the “multiplication table” shown below:

\begin{array}{c||c|c|c|c|c|c} \cdot & e & \rho & \rho^2 & f_1 & f_2 & f_3\\\hline\hline e & e & \rho & \rho^2 & f_1 & f_2 & f_3\\\hline \rho & \rho & \rho^2 & e & f_2 & f_3 & f_1\\\hline \rho^2 & \rho^2 & e & \rho & f_3 & f_1 & f_2 \\\hline f_1 & f_1 & f_3 & f_2 & e & \rho^2 & \rho \\\hline f_2 & f_2 & f_1 & f_3 & \rho & e & \rho^2 \\\hline f_3 & f_3 & f_2 & f_1 & \rho^2 & \rho & e \end{array}

The table is read by taking the row times the column. So for the row marked f_2 and the column marked \rho, the result is f_2\rho=f_1. That is, rotating first by 120° and then flipping along the centerline of the result is the same as flipping the triangle about the f_1 line.

One can check using this table that these operations form a group. Clearly, rotations and flips give another rotation or flip, so the operation is indeed a binary operation. The indentity is rotation by 360°, and each element does indeed have an inverse (for example, \rho^{-1}=\rho^2 since \rho\rho^2=\rho^2\rho=e; this can be checked for each and every element). And the operations are associative, though to show this is left as an exercise to the reader.

One beautiful thing about groups is that a very broad spectrum of objects can be shown to exhibit the properties of a group. It is much more attractive, then, to show things about a group abstractly than it is to show it for a certain set of objects.

For example, notice that in each of the groups in the above examples only had one identity element. This is actually true of any structure that is a group. Hence, the following theorem.

Theorem: In a group, the identity element is unique.
Proof: Suppose that there are two identity elements, e and f. Then by applying properties of the identity element, we have


Because there was no reference to integers with addition, rationals with multiplication, invertible matrices, or symmetries of a triangle, I have simultaneously proven that the identity element of each of these structures is unique! Indeed, I have shown it for the countless numbers of groups that one can construct. That is the power of working abstractly!

Next time I’ll start proving a few other useful properties of groups.

(Part 1)(Part 3)

June 3, 2008

What is a mathematical group? (Part 1)

Last semester, a friend of mine (who has now graduated with his B.S. in physics) asked me the question, “What exactly is a group?”

I was able to answer his question because I had already taken a course in elementary group theory. But I had also taken a course in particle physics, in which the Standard Model relies on groups, and I had not heard anything about defining a group in this class. For the uninformed student, it seemed like the lecturer was doing weird magic with groups and “adding” them together.

I will be writing this short introduction with the physics student in mind. Especially if the student is interested in any type of particle physics, this may be an interesting read.

To begin on the odyssey that is in store for a student of abstract algebra, it pays to know a bit of terminology.

Definition: A binary operation (sometimes law of composition) on a set G is a function \ast:G\times G\rightarrow G . That is, this function takes two elements of the set G and produces another in G. A more familiar way of looking at this for a physicist that has taken a course in linear algebra is that the set is closed under this operation, just as in a vector space – the sum of two vectors in a vector space V is another vector in that same set.

For example, addition (and subtraction as well) is a binary operation on the set of all integers \mathbb{Z}, for if one adds (or subtracts) two integers, the result is another integer.

Typically, this binary operation is not written in the usual fashion of writing a function of multiple variables \ast(g,h), but rather g\ast h. Normally, unless it leads to confusion, the \ast is dropped in favor of just writing gh as in normal multiplication.

Definition: The binary operation is associative if for every a,b,c in the set on which the operation is defined, (ab)c=a(bc). That is, the order of applying the binary operation has no effect on the outcome.

For example, if we examine the example of integers with addition as the binary operation, this binary operation is associative. However, if one takes the operation as subtraction, this is not associative (take, for example, 1 – (2 – 3) = 1 – (-1) = 2, but (1 – 2) – 3 = -1 – 3 = -4).

Definition: An identity element of a set G with a binary operation is an element e where es=se=s for any s\in G.

Note: Mathematicians like to use shorthand (hence all of the symbols used for different operations). The symbol \in is read “is an element of”. So the previous line s\in G is read “…for any s that is an element of G.”

Going back to the example of integers with addition, 0 acts as the identity here, because x+0=0+x=x for every x\in\mathbb{Z}.

Definition: Given an element s in a set G with a binary operation and identity element e, the inverse of s (usually denoted by s^{-1} where appropriate) is one such that ss^{-1}=s^{-1}s=e.

One last reference to the integers under addition shows that the inverse of an integer x is -x since x+(-x)=(-x)+x=0.

The punchline from all of this is the definition of a group:

Definition: A group is a set G together with a binary operation that has the property of associativity, an identity element, and inverses for each element in the set.

Next time, I’ll give some examples of groups and start proving some elementary theorems about them.

(Part 2)(Part 3)

May 30, 2008

Physics of GPS relativistic time delay

So I realized today I’ve been posting quite a bit about GNU/Linux and mathematics, but I haven’t really done much with physics. So here’s my first physics post!

This problem is actually one assigned in the undergraduate general relativity course I took in the spring 2008. It’s from James B. Hartle’s book Gravity: An Introduction to Einstein’s General Relativity, chapter 6, problem 9.

A GPS satellite emits signals at a constant rate as measured by an onboard clock. Calculate the fractional difference in the rate at which these are received by an identical clock on the surface of Earth. Take both the effects of special relativity and gravitation into account to leading order in 1/c^2 . For simplicity, assume the satellite is in a circular equatorial orbit, the ground-based clock is on the equator, and that the angle between the propagation of the signal and the velocity of the satellite is 90° in the instantaneous rest frame of the receiver.

The problem is very simplified as to make the calculations doable at the undergraduate level. Thus it is using the simplified Geometric Newtonian gravity, that is, the line element given by

\displaystyle ds^2=-\left(1+\frac{2\Phi}{c^2}\right)(c dt)^2+\left(1-\frac{2\Phi}{c^2}\right)(dx^2+dy^2+dz^2).

One could, of course, use Schwarzchild coordinates (and this is, in effect, what I did for the general relativistic part). The solution is broken into three parts: orbital information, the special relativistic effects, and the general relativistic effects.

Orbital Information

The key here (that’s not given in the problem) is that the time t that it takes satellites to orbit Earth is 12 hours. Recalling that the speed of an orbit in Newtonian gravity is v_{\text{orbit}}=\sqrt{\frac{GM}{R}}, where R is the radius of the orbit and M is the mass of the object being orbited, we get that

\begin{array}{rcl}\displaystyle \frac{2\pi R}{t}&\displaystyle=&\displaystyle \sqrt{\frac{GM}{R}}\vspace{0.3 cm}\\\displaystyle R&\displaystyle=&\displaystyle \sqrt[3]{\frac{GMt^2}{4\pi^2}}\vspace{0.3 cm}\end{array}

Plugging in the appropriate values gives R=26,605 km and v_\text{orbit}=3871.0 m/s.

Special Relativistic Effects

Let A denote the ground observer and B denote the satellite. Then we can use time dilation to get that

\begin{array}{rcl}\displaystyle\frac{\Delta \tau_{B,S}}{\Delta\tau_{A,S}}&\displaystyle=&\displaystyle\frac{1}{\gamma}\vspace{0.3 cm}\\&\displaystyle=&\displaystyle \sqrt{1-v_\text{orbit}^2/c^2}\vspace{0.3 cm}\\&\displaystyle=&\displaystyle 0.999999999917.\end{array}

General Relativistic Effects

For general relativistic effects, note that the frequencies are related by

\displaystyle \frac{\Delta\tau_{B,G}}{\Delta\tau_{A,G}}=\frac{\omega_A}{\omega_B}=\sqrt{\frac{g_{00}\left[(\vec{x}(B)\right]}{g_{00}\left[(\vec{x}(A)\right]}}=\sqrt{\frac{1+\frac{GM}{Rc^2}}{1+\frac{GM}{R_\oplus c^2}}}.

The derivation of this formula is beyond the scope of chapter 6 and uses Killing Vectors and photon geodesics introduced in a later chapter. However, an approximation to this result is given in equation 6.12 of Hartle. Plugging in the appropriate results gives the ratio to be 1+5.2873 x 10-10, very nearly 1.

Putting things together, the whole shift is

\begin{array}{rcl}\displaystyle\frac{\omega_A}{\omega_B}=\frac{\Delta\tau_B}{\Delta\tau_A}&\displaystyle=&\displaystyle(0.999999999917)(1+5.2873\times 10^{-10})\vspace{0.3 cm}\\\displaystyle&=&\displaystyle 1+4.4573\times 10^{-10}.\end{array}

As a check, suppose that a day passes on Earth (in other words, \Delta\tau_A = 24 hours = 86,400 s). Then for the satellite, (86,400 s)(4.4573 x 10-10) = 38.511 μs more have passed every day. According to Wikipedia, this number is 38 μs.

Also according to Wikipedia, the desired frequency on Earth is \omega_A=10.23 MHz. This leaves \omega_B to be 0.0045598 Hz less (compare this to Wikipedia’s claim of 0.0045700 Hz less).

The problem of course is not as simple as it was made to be. Difficulties arise when one takes into account that Earth is rotating (so the metric is more complicated), that the observer is not necessarily orbiting in the same plane as the satellite, and the orbit is not perfectly circular. However, these corrections are minute and don’t affect the problem very much.

Hope this was an interesting read!

May 29, 2008

MAC Address Spoofing

Filed under: GNU/Linux — Tags: , , — Kevin @ 7:30 pm

I had always thought that spoofing a MAC address was difficult. After all, one security precaution to wireless routers is to only let certain MAC addresses into the router.

Today I wanted to spoof a MAC address, though not for illegal purposes such as hacking into a wireless network. The university that I’m working at for the summer requires that you activate ports in the research labs by sending a request to the department’s ITS people containing the MAC address of the computer you’re trying to hook up and waiting a few days. Unfortunately I didn’t have a few days because the hard drive on the computer that we used had crapped out. It’s an old computer (pre-2000) so booting a live cd of Ubuntu was out of the question. I had my laptop and needed to connect to the internet but I couldn’t connect using the dead computer’s ethernet port since my MAC didn’t match. On top of that, we were in the sub-basement of the building, so there were no Wifi points around.

Reading through the man pages for ifconfig, I found out it’s extremely simple to spoof a MAC, at least in Linux. All commands need to be run as root, so either su to root or prefix each command with sudo.

First, disable your device (mine was eth0) by using

ifconfig eth0 down

Then, enter the line

ifconfig eth0 hw ether 00:01:02:03:04:05

and of course substitute in the MAC address that you desire. Then, just do

ifconfig eth0 up
dhclient eth0

and you’re done! You’ll now connect with your new MAC. Don’t worry, your MAC will reset on the next boot.

So anyway, I was online and looked up external hard drive enclosures to see if it would be reasonable to try one out just to make sure it wasn’t the motherboard or cables that was fried. After looking, I decided to take off the computer’s cover and poke around a bit, but didn’t actually change anything other than unplugging and replugging a few cables. Next boot it found the drive! Strange, but at least I was able to make a last backup of the data on the hard drive before we replace the computer within the next few days.

May 28, 2008

Auto Gordian-Knot v2.40 in Wine 0.9.59

Filed under: GNU/Linux — Tags: , , , , , — Kevin @ 12:10 am

I’ve had some trouble in the past getting AutoGK running in Wine on Kubuntu, but it had been a while since I tried so I decided to give it a go again to see how much Wine has progressed.

The Wine HQ profile for AutoGK claims that version 2.40 runs fine on Wine 0.9.53, so I went ahead downloaded it from AfterDawn after some searching. It installed just fine, and I downloaded the DLL files suggested by this site (it’s in German but is basic enough to be able to make out). Even after doing this I was having problems – as soon as I started it, I got the errors below:

installation is corrupted. please reinstall the application

followed by,

\home\name\history.txt". file not found

After these errors it would start, but every time I tried to open an IFO file, it told me that it was unable to parse, and if I opened a VOB directly, it said it was an invalid stream.

Just by chance, I cd’d to the Wine directory where wine installed it to check out the files in the directory. After poking about for a bit, I tried one last time…and it started just fine!

Not sure what I did, I went ahead and added it to my dock (using a hi-res icon found here). I went about encoding a DVD file that I had ripped using DVDFab (which works beautifully right away in Wine!) and watched it afterwards in Kaffeine. Satisfied, I decided to encode some more.

But starting the launcher from my dock, I got the same errors as before. Confused, I tried poking around my winecfg settings and got nothing. I decided to run the program in the same setting as before, so I cd’d again to the install directory and ran it from there. It worked again! It seems that, for whatever reason, running AutoGK in Wine requires that you be in the install directory.

I wrote a very simple bash script to put on my dock icon.

cd ~/.wine/drive_c/Program\ Files/AutoGK
wine "C:\Program Files\AutoGK\AutoGK.exe"

Save this to any directory you’d like and chmod it to 755 so that it is executable. Then run it any time you want!

If this was helpful, please drop me a line through e-mail or a comment.

UPDATE: To install AutoGK, you have to use a virtual desktop in your winecfg settings. Once you’re done installing you can remove the virtual desktop.

May 26, 2008

Circumference of a Circle

Filed under: Mathematics — Kevin @ 2:06 am

So I was thinking about my previous area problem and the thought occurred to me that the same method could also be used to derive the circumference of the circle.

Using the same setup as before, the perimeter of the polygon is just Nb. So again if we let N\rightarrow\infty we should get the circumference of a circle.

Recall that I found the formula for b in terms of the number of sides and the radius: it was

\displaystyle b=\frac{r\sin(2\pi/N)}{\sin(\pi/2-\pi/N)}

The circumference of a circle is then

\begin{array}{rcl}\displaystyle C&\displaystyle=&\displaystyle \lim_{N\rightarrow \infty}N\frac{r\sin(2\pi/N)}{\sin(\pi/2-\pi/N)}\vspace{0.3 cm}\\&\displaystyle=&\displaystyle \lim_{N\rightarrow \infty}\frac{r\sin(2\pi/N)}{N^{-1}\sin(\pi/2-\pi/N)}\vspace{0.3 cm}\\&\displaystyle=&\displaystyle \lim_{N\rightarrow\infty}\frac{r\cos(2\pi/N)(-2\pi N^{-2})}{-N^{-2}\sin(\pi/2-\pi/N)+\pi N^{-3}\cos(\pi/2-\pi/N)}\vspace{0.3 cm}\\&\displaystyle=&\displaystyle \lim_{N\rightarrow\infty}\frac{r\cos(2\pi/N)(-2\pi)}{-\sin(\pi/2-\pi/N)+\pi N^{-1}\cos(\pi/2-\pi/N)}\vspace{0.3 cm}\\&\displaystyle=&\displaystyle 2\pi r,\end{array}

which is again exactly as expected.

And now with that out of the way, I can get some sleep. Good night!

May 24, 2008

LaTeX Tests

Filed under: LaTeX — Tags: , — Kevin @ 5:11 pm

So I just imported my (few) files from Blogger.com because I was unhappy with how it handled math equations. I did some research and found out that WordPress handles them natively with \LaTeX, so I was quick to switch since I’ll probably be using mathematics quite a bit.

For example, did you know that if, for a function f of one variable,

|f(x)-f(y)| \le (x-y)^2

implies that f is actually a constant function?

The geodesic equation that test particles follow in a given metric is

\displaystyle\frac{du^\alpha}{d\tau}=\Gamma^\alpha_{\beta\gamma}u^\beta u^\gamma,

where the Christoffel symbols \Gamma^\alpha_{\beta\gamma} are given by

\displaystyle\Gamma^\alpha_{\beta\gamma}=\frac{1}{2} g^{\alpha\epsilon}\left(\frac{\partial g_{\alpha\epsilon}}{\partial x^\beta}+\frac{\partial g_{\beta\epsilon}}{\partial x^\alpha}-\frac{\partial g_{\alpha\beta}}{\partial x^\epsilon}\right).

There are a few things missing such as equation arrays, but I’ve been able to figure out how to emulate such things using arrays. For example, in a commutative ring R with elements a and b,

\begin{array}{rcl}\displaystyle(a+b)^2&\displaystyle=&\displaystyle a^2+ab+ba+b^2\vspace{0.3 cm}\\&\displaystyle=&\displaystyle a^2+2ab+b^2.\end{array}

Overall, some things are a bit annoying, but it’s definitely workable!

Codecogs images render mathematics

Filed under: LaTeX — Kevin @ 3:46 pm

So I was a little upset at how poorly Blogger.com handled math, so I did a little searching. I found a website called codecogs.com which has a LaTeX image generator. One can just direct an img tag to that website and get images such as this one:

It seems that in-line variables, such as a variable called , look fine as well.

This code is open-source, so it would be very helpful if Blogger.com would install it so that it can be used without relying on CodeCogs’ website to be up. With my luck, I’ll start using this as my sole method of rendering math and they’ll go out of business…

« Newer PostsOlder Posts »

Blog at WordPress.com.