Sunday, March 31, 2013

My heart will go on...beating even after I'm dead because you'll be breaking my ribs and making it pump

For more reasons than one, it's a shame the titanic sunk.

Numerical noise. Who would have thought that it would be such a big deal? Not me, that's for sure. There seems to be some funky (and not in a good Parliament/P-Funk kind of way either) things going on with my project I've been working on. I'm getting some small imaginary eigenvalues. They should all be real, and the fact that they're small and imaginary says that it's not a huge problem but that there's some noise coming from somewhere in my program. I think I'm going to dig into the diagonalization routine tomorrow and see if that might be the issue. I hope it is...it probably isn't though. That seems to be an immutable physical law: whatever you hope it might be, it won't be that, in fact it's going to be the very thing you don't know about right now but if you did know about it right now you'd be offering your soul in exchange for it to not be that thing. I think I might be in purgatory. Anyone else here dead, or not really sure they're alive anyway?

Saturday, March 30, 2013

Clowns are evil

It's amazing what Pennywise (not the clown) can do to help motivate you. Come to think of it, if Pennywise the clown was after me I'd have TONS of motivation to get done whatever I was doing to get as far away from him as possible. Can Pennywise be called 'him'? Technically Pennywise is an 'it'. I know, terrible puns, but I'm sure laughing. =D

If you ever do anything with numerical derivatives there's only one piece of advice I have for you: DON'T!!! Okay, that's not entirely truthful. You should if you need them. If you do need them, just watch your units. I know, I know, it's science, of course you're supposed to be careful of units, blah blah blah. What we're told in classes and what is done in practice is usually never the same in most cases. Kind of like the scientific method. Ha! The only thing the scientific method has been good for is to disprove something that lots of people have latched onto as true (did you hear that the main scientist saying drinking red wine is good for you faked almost all of his data?), and never has been used to find new discoveries.Scientists really do a piss poor job of informing the outside community as to what it is we really do. With numerical derivatives though, you need to make sure that the units you use for your input are also the same units you use to compute the derivative, conversions and everything else as well, otherwise you'll end up with garbage. That was one problem I was having. I can now reproduce the same results from another program I know works and generate the same matrix. The only problem now is that when I attempt to diagonalize the matrix to get the eigenvalues and eigenvectors I'm getting junk. The really disturbing part is that I'm using the diagonalization routines in BLAS. I have to be passing it the wrong information, or getting back the wrong info at some point.

You would hope that science would be more interesting than what it seems like from the few posts I've put on here so far. Well, not for me. This is exciting. It's frustrating as all get out when it's not working, but once you get it working, there are few things more satisfying in this life. Punk concerts are one of those few things.

Thursday, March 28, 2013

One, ah ha ha ha ha ha....!@#(!&@$!!

It's all about counting. At least that's the latest thing I've been able to come up with for the problem I've been having with generating a matrix which I need to diagonalize. For an n-dimensional problem I need to generate (n**2 +1)-points. I just figured out today that the (n+1)th and (2n+1)th are not being generated properly. Every time. What I've decided I'm going to do is beat my brains out against the wall and finger paint with whatever it is that comes out. I think my office could use a nice mural on the back wall of some children frolicking in a field of red and orange and brown.

I'm watching two old men chase each other on TV right now. One of them needs oxygen, but he took it off to run faster, and the other one stopped chasing the other to get his oxygen tank and then hobbled after him. It was pretty funny, probably more funny than it came across.

Once I finish finger painting with my brain matter, I will sit down and try to fix my code and then head out to find the wizard of Oz since I'll need a new brain. This one seems a bit used and abused, and after the runin with the wall I'm going to have, I'm not sure it will really be good for too much more, even a paper weight. Brains probably wouldn't make the best paper weight anyway, get them all soggy and such. Brains. I'm sad zombies have become so mainstream and trendy. Thank goodness we still have all kinds of other nasty horrorishness that is too much for most mainstream media be able to stomach (i.e., The Loved Ones and A Serbian Film). Lovegood is also a safe fall back that is not easily moved over to film, especially if you put the stipulation on that it needs to be done well. Scientists aren't known for speaking good English. Usually we do a pretty piss pore/pour/poor job and sometimes it's even on a porpoise.

Gah! I don't care if I do use Fortran to code, C/C++/C#/Java/BLorganite/Hulfgurftunfrter are all the same in that they will all make you want to throw your computer out the window eventually and murder someone you've never met (you could even say that the various compilers of these languages fall under the same umbrella of murderous thoughts and intentions).

Tuesday, March 19, 2013

Home is where the cart is

Have you stopped and realized just how cool shopping carts are? They're also freakin' huge in the USA (possibly in other countries too) it's all psychololology and realizing that if someone has an empty cart they will want to fill it, even if it's with nothing but cheap useless stuff that will end up costing the shopper the GDP of smaller countries. Stinking librariatians and their free market disvaluation of the dollar. =D

So I'm back at home after two weeks aboard another country, and while I'm happy to be back, I must say it's been a bit hard for me to jump back into things (I think I'm still a little jet lagged). I've been trying and all that it's led to is anger, frustration, the purchase of a super nasty energy drink, which is consequently fueling this post as I just ended up getting garbage for something that should have been easy and definitely should not be giving me crap answers. I need to buy a smart monkey I can train to code what I need that way when there's a mistake I can berate the monkey instead of wanting to slam my head through the wall. I'm starting to realize why Microsoft usually releases software that isn't debugged properly, it would be bad for morale if it was debugged properly. That's a nice piece of reverse psychosis for you. Thank you Master Gates for saving many a headache and anger induced depressive episodes of programs by shifting all of that onto the users.

I think I'm going to have to gut the program and start over. There's that !(@&#!@$)!!!!! ghost in the program that I can't find and definitely does not want to be found. Maybe if I just scrap what I have so far and start over things might go better? Rome was great the second time around, so why shouldn't it work for me? Granted, I wasn't raised by wolves, nor do I have a brother, but I think if I start over now we might avoid the more unsightly things like vivisection and such. Tom Waits has a great song about the Roman empire.

Thursday, March 14, 2013

Another day another squalor

Squalor, now there's a fun word you don't get to hear or use everyday, unless you're one of those amazingly obnoxious people that somehow can work all kinds of superfluous words into your loquacious allegories for the rest of us to listen to and wonder just what the hell you're even talking about. I don't really use big words very often, unless I'm trying to be spiffy, but people still don't understand what I'm talking about most of the time anyway. I've learned that's it's just better to shut up most of the time. That's the problem with the internet, that and governments are trying to regulate it, is that you can quite as a mouse-other than the tap-tap-tap of your keyboard-and still be noisy as all get out. This is how I know I'm getting old...I don't bounce like I used to when I fall off of really tall things.

So a continuation of what I was having problems with yesterday: it's still not working. I've narrowed some other things down and the good news is the more complex part of my code is working just fine, in fact it's spot on. The portion that feeds the complex part the data, you know where you're just adding and subtracting numbers, maybe multiplying by something every once in awhile, things you used to do in say kindergarten, or if you were a late bloomer like me, 10th grade, that's where the problems are. Good 'ol Achtung and his Razor. With so many people borrowing/stealing his razor for their own use, he probably hasn't shaved in close to a long time, and can probably rival Santa Claus in most crackhead-looking-old-guy-with-a-beard contest. I bet Santa was a pirate before he got hooked up with his current gig. Maybe that's his punishment for being such an evil and wicked pirate, he now has to eat cookies and other assorted treats that he knows kids have handled, licked, taken bites out of, and who knows what else with their hands covered in all kinds of kid goo and other fun things. Ugh, makes me no longer want to be a pirate. It's 4am back home and I'm up and working on something that makes me want to bash out the brains of small creatures very slowly, starting of course with my own. This feels like one of those bad dreams where you're trying to undo your pants because you really really REALLY need to use the restroom, but you can't...I should get back to work.

Wednesday, March 13, 2013

Introduction and stuff

For starters, yes I am insane and yes I am a quantum chemist. No, there is no direct (proven) correlation between the two. I have had major head trama before in my life (true story) but they say I was like this before my accident. As a quantum chemist I've been compared to the Dark Side, Nikita Khrushchev, the pied piper, and Trent Reznor, all of which I am very proud (due to the context in which I was compared, not because I like all of them by any means).

This is a place for me to air my different thoughts about what I'm working on and perhaps share something humorous (or even useful, heaven forbid) with someone else. If you happen to read this and there's something where you say "Gee Wally, that sounds like a great idea!" Much like in the TV show, I cannot be held responsible for any damages that may occur to you if you try it. I also make no claims to originality of the content here, and most likely I have stolen it from somewhere else along the way, I just don't remember, otherwise I'd give a reference.

I'm working on writing a routine to form the Hessian matrix and then diagonalize it to get the eigenvalues and eigenvectors. Simple enough, right? Oh no. I have no clue what's going on right now. Sometimes it works, other times it doesn't, other times I think my code is going to peel itself off my screen and come attack me for butchering it so much and so many times over. So far this was for problems larger than I was willing to do by hand. The smallest matrix that is still a real example is a six by six (that's 720 terms in your final expression before you simplify, and it's a sixth degree polynomial equations you will have to find the roots of) and I'm not that bored, even if I have nothing else to do right now. So I made up a toy problem and created a 3x3 matrix, diagonalized it by hand and got the eigenvalues. I then plugged it into my program and ran it and low and behold I got the correct eigenvalues. Okay, so my diagonalization routine is working. Perhaps the problem is in my routine that generates the Hessian. Pray for my soul as I go back into the dark....

UPDATE: Okay, so I'm closer to a solution. The results I'm getting are consistently about 60-90 wave numbers too low from what they should be. Now to figure out just where this error is coming from, and back into the abyss (I like that word, it just looks ominous and full of foreboding, I don't really remember much about the movie other than I confused it with Cocoon until I was about 17 years old, hmm, maybe it wasn't that good of a movie after all)  once again...