<$BlogRSDUrl$>

Saturday, March 13, 2010

Dicom test files 

From Steve Pieper:

http://www.slicer.org/slicerWiki/index.php/File:Dicom-database-examples-2010-03-09.zip


Optimizer summary 

L-BFGS-B:
http://www.ece.northwestern.edu/~nocedal/lbfgsb.html
License: GPL

M2QN1:
http://www-rocq.inria.fr/~gilbert/modulopt/optimization-routines/m2qn1/m2qn1.html
License: proprietary

TNBC:
http://iris.gmu.edu/~snash/nash/software/software.html
License: unspecified

DONLP2:
http://www.mathematik.tu-darmstadt.de/fbereiche/numerik/staff/spellucci/DONLP2/
License: commercial

ALGLIB
http://www.alglib.net/

License: GPL

L-BFGS-B license 

I was poking around with the L-BFGS-B optimizer, which is used by plastimatch (also ITK).  I discovered it is GPL licensed, (and/or covered by ACM license):

http://www.eecs.northwestern.edu/~nocedal/lbfgsb.html
http://www.acm.org/publications/policies/softwarecrnotice

I wonder if the license changed.  For example SciPy uses under a different license:

http://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.fmin_l_bfgs_b.html

The SciPy list has a discussion of alternate optimizers of this class.

http://osdir.com/ml/python.scientific.devel/2004-04/msg00005.html

See also this regarding GSL routines.

http://www.mail-archive.com/help-gsl@gnu.org/msg00603.html

String libraries redux 

Well, the string library stuff is coming up again.  For my C++ code, I'm interested in what can be done better than std::string.  E.g. is CBstring better?  There are some comparisons by the authors:
As far as it goes, Matthew Wilson's code looks interesting too:


Monday, March 08, 2010

Monte Carlo codes 

Monte Carlo codes: MCNPX, DPM, PENELOPE, etc

GEANT4
Here is the site for MCNPX
Not sure where I can download DPM. Here is an old version
Penelope. It is hard to find as well. But eventually I found it.
VMC++. Apparently it is proprietary

Sunday, March 07, 2010

Smart pointers 

Plastimatch would benefit from smart pointers (or GC).  There are a couple of places in the code where logic must swap around data between containers, and do bookkeeping because the containers own the data.

Here are some implementations of smart pointers:
It would seem that smart pointers require C++.  Using C is too cumbersome (though possible, see earlier post).

I'm slightly concerned about the loss of performance in naive reference
counted smart pointers.  See for example this description:

http://c2.com/cgi/wiki?ReferenceCounting

Saturday, March 06, 2010

New crop of blogging sites 

Here is what scribefire 3.5 supports.  These are APIs, not sites.
  • Wordpress
  • Movable Type
  • Drupal
  • Textpattern
  • Roller
  • MetaWeblog API
  • Blogger
  • Tumblr
My current dissatisfaction with blogger is that you can only edit the 25 most recent posts.  This makes it difficult to update/merge older entries.

From the w.blogger site, here are a slightly dated list of blog sites.

This page is powered by Blogger. Isn't yours?