# Simple static analysis of Feff

---

**NOTE:** The files discussed below were removed at
https://github.com/xraypy/feff85exafs/tree/1bc6fdeff71cf5a29e68aa70170a7329f5e19c61 
Most of the issues uncovered by that static analysis have been
addressed.  I am leaving this file in the repo in case anyone wants to
redo a static analysis

---

For each subdir with code, I ran
[ftnchek](http://www.dsm.fordham.edu/~ftnchek/) a couple times.  (Note
that ftnchek has a debian/ubuntu package.)

The file `static.analysis/syntax` was generated by 

        ftnchek --nocommon *.f  > static.analysis/syntax

The files `static.analysis/calltree`, `static.analysis/common_blocks`,
and `static.analysis/subprograms` all came from 

        ftnchek --calltree *.f  > static.analysis/calltree

The `common_blocks` and `subprograms` are simply chunks extracted from
the call using the `--calltree` argument.

I also ran ftncheck on the moonolithic code in the `attic`
subdirectory.  That might help resolve some missing references found
when invoking it on the "modules" and libraries.

There is not much organization here.  This is a simple start to
dealing with issue #5.

As Matt said in the email I quoted from to create #5

       It would be nice to come up with a tree of called functions and 
	   dependencies -- I think  there are quite a few completely unused 
	   functions, and lots of commented out code blocks.   These should
	   all be removed - they exist in the initial git commit, so are not
	   lost to history, but there's no reason to have to look at that.
	   
