US nuclear scientist considers assassination of Iranian utterly despicable

It's unclear who assassinated Iranian  nuclear scientist Mostafa Roshan by driving by his car on a motorcycle, placing a magnetized explosive designed to damage the inside of the car but not the outside, and then speeding off through the packed traffic by lane-splitting. Some Iranians have their opinions:

Thousands of mourners chanted “Death to Israel” and “Death to America” on Friday during the funeral of a slain nuclear expert whom Iranian officials accuse the two nations of killing in a bomb blast this week as part of a secret operation to stop Iran’s nuclear program.

- The Washington Post

Even some western experts have claimed that it must be Israel:

"If you look at the choice of target, it really could only be Israel,'' says Robert Baer, a former CIA agent in the Middle East.

On the other hand, some suspect that certain factions of the Iranian state could have done it due to their suspicious of disloyalty and involvement with western institutions. And in that case, the following message is basically irrelevant.

Perspective: I'm a run-of-the-mill US nuclear scientist working on advanced nuclear reactors to help mankind get energy to improve quality of life.

If Israel and/or other western-like states did this, shame on them. Covertly killing scientists is nothing but counter-productive towards any imaginable goal. The enraged Iranians will likely place a more pressing national priority on developing nuclear weapons, and make it even more secret. In this case, you're not scaring people from going into the industry, but instead you're inspiring them to become national heroes. You're not causing meaningful set-backs in terms of Iranian expertise, the industrial knowledge to manufacture weapons is somewhat well-known. All you're doing is justifying their quest for nuclear weapons (who would risk losing a major city for one botched assassination attempt?) and making them more angry with the oppressively powerful west.

Countries with nuclear weapons are acting like overgrown bullies on the playground who got held back a few grades. When some less powerful country tries to pick up a stick, the bully smashes it out of his hands and says: only bullies can have sticks. The non-proliferation treaty was meant to prevent the spread of nuclear weapons AND to reduce the nuclear capabilities of the nuclear states to minimal levels. The latter has not happened (as is thoroughly detailed in this wonderful book). I fully understand and support non-proliferation, and accordingly I would like to see more reasonable attempts at stopping the spread. Until we live in a world where all nations can be comfortable in their sovereignty, the non-nuclear states will try to get nuclear weapons. The posturing we're seeing now, and this and other similar assassinations will only lead to more people trying to get nuclear weapons, in any possible aftermath. These are the most horribly destructive weapons known to man, and indirectly promoting their spread by bickering about minutia and/or invading countries for minor reasons is an extreme disservice to mankind. You're nourishing seeds that will last for generations telling people that they aren't safe until they have nuclear weapons.

Posted in Uncategorized | Leave a comment

old schwinn exercise bike fun

At Smashputt 2012 last night, there was a random old Schwinn exercise bike like my mom use to have. I made Kylie and Caroline ride it like my sister and I used to: one person on each pedal!

Awesome bike. It even had the dinger!

Here's a really dark video that kind of shows how much fun it was

Posted in Uncategorized | Leave a comment

favorite programming language jokes

These started coming up at work and people kept chiming in new ones. Here's a list. Sorry in advance for the offensive one.

  • What's a pirate's favorite programming language?
  • What's a miner's favorite programming language?
  • What's a hispanic's favorite programming language?
  • What's a diver's favorite programming language?
  • What's a mongoose's favorite programming language?
  • What's a Seattleite's favorite programming language?
  • What's the army's favorite scripting language?
  • What's the little mermaid's favorite scripting language?
  • What's Beethoven's favorite programming language?
  • What's a Frenchman's favorite programming language?

Hilarious. Answers below.

Continue reading

Posted in computers | Leave a comment

building a python extension with trilinos on linux and windows

Continuing my python extension project, I've now successfully built a toy python 2.7 extension in C++ that uses the Epetra package from Trilinos 10.8. I've built it on Ubuntu 11.10 (with gcc) and on Windows XP (with Visual Studio 2008) using distutils. It's a bit of a hack, but it works and is a path forward for me.

I started with Linux, because I figured it would be easier. I learned a few things along the way. First, you have to have built Trilinos with shared libraries enabled. This is required for how Python handles things, I guess, and is made clear under the heading "Shared Libraries" in this file. The PyTrilinos package (which is effectively a professional set of python-trilinos extensions, btw. I needed a custom one!) needs them as well. So run your cmake-gui and check the shared libraries button. Besides the libepetra.a in the build folder, you'll now also find a libepetra.so. In Windows, you'll get >500 errors if you compile all of trilinos with shared libraries, but Epetra at least worked.
Continue reading

Posted in computers, nuclear | Tagged , , | Leave a comment

my experience compiling against Trilinos on Ubuntu

I'm just embarking on a historic journey to learn a bit about the Trilinos math library.  To get started, I've gone through the hands-on tutorial a bit and after a few tries, I've gotten something compiled.

Trilinos 10.4 is available in the repositories for Ubuntu (11.10 confirmed). But Trilinos 10.8 is out now, so I had to build my own. Their instructions with CMAKE were quite good and the build process didn't have too many hiccups. I found that the cmake gui is the way to go. Make sure you enable Didasko (the tutorial) in the cmake gui. When you do this, a few more Didasko options show up so you have to go enable those too.
Continue reading

Posted in Uncategorized | Leave a comment

Speed of python dict access methods (direct vs. get)

In Python, a data from a dictionary can be retrieved using either direct key access (e.g. daysIn['January']=31) or through the get method (e.g. daysIn.get('January',31). In the first method, if a key does not exist, there will be a KeyError exception raised. In the get method, if no key exists, the optional default value (31) will be returned with no error. This is well-documented here.

I've been interested in accessing very large dictionaries very quickly for a nuclear reactor simulation code I'm writing for my thesis. For a large core (3000+ regions, 6 mesh points/region, 33 groups), the scatter matrices easily make dictionaries with 16 million entries or so. Since scatter matrices are fairly sparse, I've saved memory by only entering non-zero values. Then, looping back through, I just used get. It was slow though. I wondered whether saving the non-zero keys and accessing the dictionary directly would be much faster. So I ran a test with various amounts of data density. Low density means there are more zero entries.

Dictionary Timing Results get vs. direct

Dictionary access timing results for various amounts of data sparsity

In conclusion, directly accessing remembered keys converges to not quite twice as fast for full dictionaries. Good to know.
Continue reading

Posted in computers | Tagged | Leave a comment

How about a nice game of chess?

Here's a random one. I've had this talking electronic chess board since 1994. It's called the Sharper Image Design Talking Chess Companion. Model SM 470. It's awesome and wonderful and I can't find any commentary on it on the internet. Therefore, this. I've taken the attached video showing Chester in all his glory, and with all of his loving phrases. Such as:

Hi! I'm Chester. How about a nice game of chess?

Sure you're playing better but your taking more time than me.

Now I've got you!

How about a draw?

Many good times hanging out with old Chester. They did a great job putting in tonality into his commentary. It's really like playing with another person. I only wish the random number generator had him do other openings more often. I've never really used the tournament openings mode, but I'm kind of curious. I wish I still had the manual. Anyway, the best part is that I know that my 4th-grade self is better at chess than my current self because I used to be able to easily beat Chester on a higher level than I can now.

Posted in random rant | 1 Comment

Installing ERANOS 2.1 on a 64-bit linux workstation

I just built ERANOS 2.1 reactor analysis suite from France on a 64-bit linux workstation with Red Hat 7. It wasn't that bad, as the CEA has done a great job at automating the installation process. I'll briefly discuss how things went.

First of all, don't cd into the UTILS folder and run Install. You have to do as it says and run UTILS/Install if it doesn't work the first time. Also as it says, it's smart to copy all the library disks over before loading the code DVD.
Continue reading

Posted in Uncategorized | 2 Comments

Speed up REBUS very much

If you use REBUS to analyze your nuclear reactors, and you use a lot of regions, you may be interested in page 13 of this pdf. You can change one line of the source code and the point where it says: "HMG4C CALLED AFTER NEUTRONICS TO UPDATE COMPXS" will fly by instead of sitting there for a very long time. This is a huge fix that ANL knows about and fixed internally but didn't re-release to RSICC. I think it only affects REBUS-PC, and that REBUS-3 is OK. Enjoy!

Posted in Uncategorized | Leave a comment

renewable vs. sustainable

This is like my favorite rant. You know how legislation is targeting renewable energy? Well that's a bad idea. Back in my day, people used the word "sustainable" to describe energy sources and lifestyles that were just that -- they could continue for a very long time without us running out of resources, killing everyone, etc. Well now renewable has gained favor and is the obvious way to go for everyone who doesn't know any better. At first glance, most renewable things seem sustainable. But that's not necessarily the case! Wind and Solar are renewable, but are we considering the quantity of rare earths needed to get the current technologies up to significant levels? Not necessarily. (BTW, solar thermal is way better than solar photovoltaics (solar panels)). And just to make the point more clear, consider the following renewable energy sources:

  • Trees
  • Whale Blubber

Not very sustainable, either of those.

Another beef is that people use renewable to exclude nuclear power. Well you can't do that anymore.

Nuclear Energy is now Renewable

Typically nuclear is not considered renewable. But the Japanese have recently demonstrated that they can pull Uranium from the sea for something like $100/kg. And guess what? Lowell Wood has recently pointed out that plate tectonics move the earth's crust at a rate that replenishes the uranium in sea water faster than we could ever use it. So that means Uranium is now renewable. So HA.

Keep in mind that renewable doesn't mean sustainable. In typical reactors only 5% or so of the uranium is burned. We'll have to do better. Consider high burnup reactors like fast breeders, TWRs, LFTRs, etc.

Posted in random rant | Leave a comment