Science


RaisinDo you have a pet that you love so much that the thought of parting from them one day is unbearable?  Best Friends Again is here to help.  Yesterday, BFA began registration for an auction that many dog owners like myself will covet - the 5 lucky winners will have their dogs cloned.

Bids start at a mere $100,000.  You’d better really love Fido.

With the price of cloning so high at the moment, I don’t foresee being able to clone my adorable mini dachshund companion any time in her life unless one of my inventions magically takes off.  Instead, a good alternative would be storing 10 or 20cc of blood and waiting for the practice to become more commonplace.

Another interesting angle about this story is the role that cloning may play in our society in the near future.  Cloning was taboo at first, and even now research in cloning has been severely limited.  However, I think cloning will begin to work its way into the hearts of the public through projects such as this that stand to make an enormous personal impact.

What’s more, in the future we may be able to substantially improve genes by many of the advances that are being worked out as you read this.  Not only would I get little Raisin back some day, I could choose to have her not shed, have a high immunity to cancer, and have nails that never need clipping.

Raisin 2.0, coming in a few decades.

MATLAB (the scientific computing software) has a lot of built-in functions for doing various matrix operations quickly without using loops (for, while, etc.).  When you’re computing vast amounts of data, this can save a lot of time as each loop iteration eats compute cycles.

Today I needed a function that returned only the positive elements of a matrix.  I was surprised to find that MATLAB does not include this as a built-in function.  A quick google search came up empty.  It’s very easy to write a program to search for elements that are postive by iterating through all the elements of a matrix and forming either a mask (a matrix of 1’s and 0’s - 1’s for positives) or directly generating the matrix needed.  However, this does not keep with the idea of avoiding loops.

Here is the solution I came up with.  First of all, let’s do some math.  If you add the absolute value of a negative number to itself, you’ll get zero.

Example: -2+|-2| = 0

For positive numbers you’ll end up with two times the number…

Example: 3+|3| = 6

Thus, an equation to get only the positive (elements) numbers, where X is any matrix of numbers is:

X + |X| / 2 = positive numbers of X

In MATLAB this is coded as:

MATLAB > (X+abs(X))./2

Now, let’s get a bit mask out of this.  All we need to do is divide the matrix X by itself to get ones since anything divided by itself equals one (x/x = 1).  However, this method will produce “divide by zero” warnings in MATLAB if you have zeros in your matrix.  A simple fix is to use binary arithmatic instead of dividing the matrix by itself.  The following will produce the mask of positive elements:

MATLAB > ((X+abs(X))./2)&1

In this case the positive values are converted to 1’s by performing a binary AND with 1 on the matrix.  Now we have a nice bit mask to work with for the next step of finding the negative numbers.  Taking the code from before and inverting it gives us a mask of non-positives (includes zeros).  But the zeros will fall out when multiplied by the original matrix.  That gives us this code of the negative elements of the matrix:

MATLAB > ~(((X+abs(X))./2)&1).*X

If a mask of negative elements is desired, simple use the binary AND operator again.

MATLAB > ~(((X+abs(X))./2)&1).*X&1

And finally if we want a mask of zeros in the matrix, we can combine both masks and invert.

MATLAB > ~((~(((X+abs(X))./2)&1).*X&1)+(((X+abs(X))./2)&1))

These pieces of code allow efficient computation of positive, negative, and zero elements as well as their corresponding bit masks.

CowThe United Nations has released a report blaming the world’s cow herds as the single-most greatest cause of the depleting environmental conditions… global warming, acid rain, deforestation, reef destruction, and oceanic “dead zones” to name a few.  Al Gore, you can stop blaming the Republicans.  Approximately 18% of all greenhouse gases are blamed on cattle (cows).  This percentage is higher than that contributed by all of the world’s transportation mechanisms (cars, airplanes, ships) put together!

I had no idea that burping cows produced nearly 1/3 of all methane in the atmosphere.  Methane, as luck would have it, warms the earth 20 times faster than CO2!!!  And there are other factors: 2/3 of the world’s ammonia emissions come from cattle (causing acid rain); emissions from producing fertilizer and transporting meat total 9% of all CO2; deforestation from overgrazing is creating deserts in many areas; and cattle use a lot of water - 990 liters per liter of milk produced!

It gets worse, those little buggers don’t even say excuse me!  Meanwhile they are slowing destroying our planet with no end in sight.  I propose a compromise.

According to Colorado State University, one cow can belch more than 50 million metric tons of methane gas each year.  I say we find a way to capture this gas and use it to meet our fuel needs!  Methane cars, power plants, and even batteries.  Your neighborhood cow, Betsy, could be used to recharge your cell phone.  Now, where’s the number for my patent lawyer…

Sources:
http://www.straightdope.com/classics/a4_176.html
http://news.independent.co.uk/environment/article2062484.ece

Stuck out in the wilderness about to freeze to death?  Get some ice.

No, really.

Ice LensMythbusters ran an episode (#45) about using ice to make a fire.  The gist of the design is to shape extremely pure ice into a large lens a few inches thick and about the size of a small dinner plate.  The ice is then used to focus light from the sun to slowly create a fire.  You’ll need some extra dry tinder finely separated.  One guy on the net has laid out full instructions.

This is one of the more unique survival tips that I found interesting enough to write about.  If you try this out, let me know how it goes.

Meniscus Climbing
We’ve all seen those small spiders that can walk on water.  Some of us have even marveled at animals that can run across small, exotic ponds on the Discovery Channel.  The waterlily leaf beetle larva can’t do either.  Or can it?  With a strong arch of its back this little bug has figured out a little bit of mother nature’s physics.  It uses the deformation of the water surface to create lateral capillary forces which can shoot the insect up the slick slope of the meniscus of a plant or structure in the water.  If you tried to run up the meniscus, it would be like trying to ice skate up the side of a swimming pool made of smooth ice - nearly impossible because of the lack of friction between the surface and your feet.  Instead, as seen in the photo, this bug makes its own meniscus which is attracted by surface tension to the other meniscus, thereby generating all of the force needed to climb this slope to safety.

Now that’s pretty cool.  I wish getting out of bed was this easy.

More info at mit.edu