aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore5
-rw-r--r--edwin-cheatsheet.txt84
-rw-r--r--proposal/bnewbold_8thesis_proposal.lyx146
-rw-r--r--proposal/bnewbold_8thesis_proposal.pdfbin0 -> 45946 bytes
-rw-r--r--proposal/bnewbold_8thesis_proposal.skel.pdfbin0 -> 42278 bytes
-rw-r--r--references.html42
-rw-r--r--sage-scheme-notes.txt9
-rw-r--r--sicm-fall08.html127
-rw-r--r--to_athena.sh3
9 files changed, 416 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..72ecbcb
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,5 @@
+downloads
+toread
+sage
+scheme_stuff
+proposal/bnewbold_8thesis_proposal.skel.pdf
diff --git a/edwin-cheatsheet.txt b/edwin-cheatsheet.txt
new file mode 100644
index 0000000..68ffd2c
--- /dev/null
+++ b/edwin-cheatsheet.txt
@@ -0,0 +1,84 @@
+
+-*-mode: Text; tab-width: 4; -*-
+
+ EDWIN CHEAT SHEET
+ (keep under your pillow)
+
+ 6.090, IAP 2005
+
+Reading Edwin key combinations:
+ C-x Ctrl+x
+ M-x Alt+x
+ C-x, y Ctrl+x, release both, y
+ C-M-x Ctrl+Alt+x
+
+Stuff You *Need* to Know:
+ Starting Edwin Start Menu > MIT Scheme > Edwin
+ Quitting Edwin C-x, C-c
+ Opening a file C-x, C-f
+ Closing a file (aka buffer) C-x, k
+ Evaluate current expression C-x, C-e
+ (expression ending just before
+ insertion point)
+ Evaluate entire buffer
+ (works only on Scheme files!) M-o
+
+The Edwin Window and Scheme:
+ When you start it, the Edwin window looks like a plain text
+ editor. It has a large blank area for entering text, one black
+ line at the bottom with some information displayed (the modeline),
+ and a blank white line below that (the minibuffer).
+
+ The text area
+ is where the file you're viewing shows up. You can edit the
+ file here, with the usual keys (up, down, page up, left... you
+ get the idea).
+
+ The modeline
+ displays the name of the current buffer (file), your position
+ in it, and the kind of file Edwin thinks it is (text, scheme
+ code etc.).
+
+ The minibuffer
+ is where you interact with Edwin's commands. For example, when
+ you press C-x, C-f to open a file, you enter the filename in
+ the minibuffer.
+
+ Edwin is more than just an editor, though. It also features a
+ Scheme evaluator, to which it can send your code. So when you
+ press C-x, C-e at the end of an expression, it gets evaluated by
+ this evaluator (more on evaluators and evaluation in class).
+
+ Try out the key combinations below to see what they do. Don't try
+ to memorize them. Your finger muscles will learn them as time goes
+ on :-)
+
+Inessential Edwin:
+ Editing
+ Marking/selecting text Go to one end of the block, press
+ C-space, go to the other end. You won't
+ see any visual indication of the
+ selection.
+ Cut C-w
+ Copy M-w
+ Paste C-y
+ Cut from point to end of like C-k
+
+ Multiple Windows and Buffers
+ Switch buffer C-x, b
+ Switch window C-x, o
+ Split window vertically C-x, 2
+ Split window horizontally C-x, 3
+ Delete current split C-x, 0
+ Create new frame (window) C-x, 5, 2
+ Delete current frame C-x, 5, 0
+
+Interactive Scheme:
+ When you are in the buffer called *scheme*, everything you type goes
+ directly to the evaluator, and the results are displayed below your
+ expressions. When you make an error, the evaluator gives you a set of
+ choices to help you debug your code. Usually, it is best to type (restart 1)
+ at the next prompt to abort the current evaluation, so you can go back and
+ examine your code to see what went wrong. For more advanced debugging tools,
+ talk to an LA.
+
diff --git a/proposal/bnewbold_8thesis_proposal.lyx b/proposal/bnewbold_8thesis_proposal.lyx
new file mode 100644
index 0000000..708b44d
--- /dev/null
+++ b/proposal/bnewbold_8thesis_proposal.lyx
@@ -0,0 +1,146 @@
+#LyX 1.5.2 created this file. For more info see http://www.lyx.org/
+\lyxformat 276
+\begin_document
+\begin_header
+\textclass article
+\language english
+\inputencoding auto
+\font_roman default
+\font_sans default
+\font_typewriter default
+\font_default_family default
+\font_sc false
+\font_osf false
+\font_sf_scale 100
+\font_tt_scale 100
+\graphics default
+\paperfontsize default
+\papersize default
+\use_geometry false
+\use_amsmath 1
+\use_esint 1
+\cite_engine basic
+\use_bibtopic false
+\paperorientation portrait
+\secnumdepth 3
+\tocdepth 3
+\paragraph_separation indent
+\defskip medskip
+\quotes_language english
+\papercolumns 1
+\papersides 1
+\paperpagestyle default
+\tracking_changes false
+\output_changes false
+\author ""
+\author ""
+\end_header
+
+\begin_body
+
+\begin_layout Title
+A Computational Elucidation of Curved Spacetime
+\end_layout
+
+\begin_layout Date
+\begin_inset Formula $\today$
+\end_inset
+
+
+\end_layout
+
+\begin_layout Author
+Bryan Newbold
+\end_layout
+
+\begin_layout Quotation
+Advisor: Prof.
+ Gerald J.
+ Sussman, EECS
+\end_layout
+
+\begin_layout Standard
+I propose to implement a geometric formulation of curved space time in a
+ functional computer programming language, and to explore the space of simulatio
+ns and manipulations made possible by such a formulation.
+ A primary motivation is to state the foundations of General Relativity
+ in a non-ambiguous manner.
+
+\end_layout
+
+\begin_layout Standard
+This work follows several attempts to formulate curved spacetime on computers
+ for the purpose of numerical calculations and algebraic manipulation.
+ Most of these packages are specially designed for the tasks of tensor analysis
+ and/or efficient numerical calculation, as is appropriate for use in calculatio
+ns.
+ A crucial difference of this proposed work will be to carefully build up
+ the geometric and analytical tools in a general purpose functional programing
+ language (mit-scheme).
+ As a learning and reference tool, this will allow users to explore the
+ inner workings and structure of the system, which I believe is essential
+ to understanding the system as a whole.
+
+\end_layout
+
+\begin_layout Standard
+The frame field representation will be used to emphasize the geometric propertie
+s of curved space time, as opposed to the more traditional coordinate heavy
+ tensor analysis approach.
+\end_layout
+
+\begin_layout Standard
+The resulting work will include a full implementation with source code and
+ documentation, as well as example problems and qualitative comparisons
+ with existing packages and software systems.
+\end_layout
+
+\begin_layout Bibliography
+\begin_inset LatexCommand bibitem
+key "key-1"
+
+\end_inset
+
+Functional Differential Geometry, G.
+ Sussman and J.
+ Wisdom (2005)
+\end_layout
+
+\begin_layout Bibliography
+\begin_inset LatexCommand bibitem
+key "key-2"
+
+\end_inset
+
+Structure and Interpretation of Classical Mechanics, G.
+ Sussman and J.
+ Wisdom (2001)
+\end_layout
+
+\begin_layout Bibliography
+\begin_inset LatexCommand bibitem
+key "key-1"
+
+\end_inset
+
+"Algebraic Computing in General Relativity", Ray d'Inverno (from General
+ Relativity, G.
+ Hall and J.
+ Pulham)
+\end_layout
+
+\begin_layout Bibliography
+\begin_inset LatexCommand bibitem
+key "key-2"
+
+\end_inset
+
+"The Use of Algebraic Computing in General Relativity", H.
+ I.
+ Cohen, A.
+ Leringe and Y.
+ Sundblad
+\end_layout
+
+\end_body
+\end_document
diff --git a/proposal/bnewbold_8thesis_proposal.pdf b/proposal/bnewbold_8thesis_proposal.pdf
new file mode 100644
index 0000000..095e7ce
--- /dev/null
+++ b/proposal/bnewbold_8thesis_proposal.pdf
Binary files differ
diff --git a/proposal/bnewbold_8thesis_proposal.skel.pdf b/proposal/bnewbold_8thesis_proposal.skel.pdf
new file mode 100644
index 0000000..b9d2632
--- /dev/null
+++ b/proposal/bnewbold_8thesis_proposal.skel.pdf
Binary files differ
diff --git a/references.html b/references.html
new file mode 100644
index 0000000..5481396
--- /dev/null
+++ b/references.html
@@ -0,0 +1,42 @@
+<html>
+<head><title>bnewbold 8 thesis references</title></head>
+<body style="margin: 25px; font-family: helvetica;">
+<h1 style="border-bottom: 2px solid;">References</h1>
+<i>Bryan Newbold, <a href="mailto:bnewbold@mit.edu">bnewbold@mit.edu</a></i><br />
+<i><a href="http://web.mit.edu/bnewbold/thesis/references.html">
+http://web.mit.edu/bnewbold/thesis/references.html</a></i>
+
+The SICM text book is <a href="http://mitpress.mit.edu/SICM/">free online</a>;
+so is the <a href="http://mitpress.mit.edu/sicp/">SICP book</a>.
+</br />
+There is an unofficial <a href="http://groups.google.com/group/sicm">SICM mailing list</a>.<br />
+<br />
+<b>Computational GR</b>
+<br />Try this <a href="http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla:en-US:official&hs=xWi&q=+site:www.springerlink.com+general+relativity+lisp">google search</a>?
+<ul>
+ <li />"Algebraic Computing in General Relativity", Raw d'Inverno (from <u>General Relativity</u>, G. Hall and J. Pulham)
+ <li />"General Relativity and the Application of Algebraic Manipulative Systems", Barton, D. and Fitch, J.P. (1971)
+ <li />Campbell, S. J.; Wainwright, J. "Algebraic computing and the Newman-Penrose formalism in general relativity" General Relativity and Gravitation, vol. 8, Dec. 1977, pp987-1001
+ <li />"The use of algebraic computing in general relativity", H. I. Cohen, Ö. Leringe and Y. Sundblad
+ <li />"ORTOCARTAN — A new computer program for analytic calculations in general relativity", Andrzej Krasinacuteski and Marek Perkowski
+ <li />"Sheep and classification in general relativity", Inge Frick and Jan E. Åman
+ <li />"Using camal for algebraic computations in general relativity", J. P. Fitch and H. I. Cohen
+</ul>
+
+<b>Other</b> (<a href="http://static.bryannewbold.com/toread/thought/">download</a>)
+<ul>
+ <li /><u>The Dynamicist's Workbench: Automatic Preparation of Numerical Experiments</u>, H. Abelson and G. Sussman
+ <li /><u>Simulating Physics with Computers</u>, R. Feynman
+ <li /><u>Functional Differential Geometry</u>, G. Sussman and J. Wisdom (2005)
+
+ <li /><u>Computer Programs for Calculating General-Relativistic Curvature Tensors</u>, J. Fletcher, R. Clemen, R. Matzner, K. Thorne, and B. Zimmerman (letter, 1967)
+ <li /><u>Intelligence in Scientific Computing</u>, H. Abelson, M. Eisenberg, M. Halfant, J. Katzenelson, E. Sacks, G. Sussman, J. Wisdom, and K. Yip
+ <li /><u>Abstraction in Numerical Methods</u>, M. Halfant and G. Sussman
+ <li /><u>The Role of Programming in the Formulation of Ideas</u>, G. Sussman and J. Wisdom
+ <li /><u>Scientific Comutation and Functional Programming</u>, J. Karczmarczuk (1999)
+ <li /><u>The Supercomputer Toolkit: A general framework for special-purpose computing</u>, H. Abelson, A. Berlin, J. Katzenelson, W. McAllister, G. Rozas, G. Sussman, and J. Wisdom (1991)
+
+</ul>
+</body>
+</html>
+
diff --git a/sage-scheme-notes.txt b/sage-scheme-notes.txt
new file mode 100644
index 0000000..0b88a90
--- /dev/null
+++ b/sage-scheme-notes.txt
@@ -0,0 +1,9 @@
+
+in sage-###/devel/sage/sage/interfaces/, copy template.py to mitscheme.py
+edit all.py and add appropriate objects, strings
+
+then compile everything:
+./sage -b
+
+
+
diff --git a/sicm-fall08.html b/sicm-fall08.html
new file mode 100644
index 0000000..db6c70e
--- /dev/null
+++ b/sicm-fall08.html
@@ -0,0 +1,127 @@
+<html>
+<head><title>SICM Material Fall 2008</title></head>
+<body style="margin: 25px; font-family: helvetica;">
+<h1 style="border-bottom: 2px solid;">Functional Relativity, Symbolic Geometry, et al</h1>
+<i>Bryan Newbold, <a href="mailto:bnewbold@mit.edu">bnewbold@mit.edu</a></i><br />
+<i><a href="http://web.mit.edu/bnewbold/Public/sicm-fall08.html">
+http://web.mit.edu/bnewbold/Public/sicm-fall08.html</a></i>
+
+<h2>Informal Background</h2>
+For the fall of 2008 I'm very interested in investigating gravitation and
+other physical theories using functional programming techniques. I find that
+formalizing physical systems into a computer model is the best way to solidify
+my understanding of the system; using functional languages and techniques
+makes the conceptual wall between mathematical abstraction and programming
+implementation much lower; the result is a more reusable and general model
+well suited for experimentation and exploration.
+<br /> <br />
+I am planning on getting my undergraduate physics degree in spring 2009, for
+which I will need a thesis. I am hoping to develop skills and tools this fall
+with which to accomplish Real Live Science over IAP and in the early spring.
+<br /><br />
+The stimulus for this course of study was the class
+<a href="http://www-swiss.ai.mit.edu/~gjs/6946/index.html">Classical
+Mechanics: A Computational Approach</a> taught by G. Sussman and J. Wisdom
+at <a href="http://web.mit.edu">MIT</a>. I had trouble with the later sections
+of the book/course and am hoping that now with an eta of math under my belt I
+can chip away at it.
+
+<h2>Potential Fall Projects</h2>
+
+<b>Integration of mit-scheme and scmutils into Sage</b>
+<span style="font-weight:bold; color:#00CC00;">(yes)</span>
+<br />The <a href="http://sagemath.org">Sage math system</a> is an open-source
+alternative to Mathematica, Maple, etc. It provides an easy to learn html
+notebook interface (as well as command line) and is bundled with a plethora
+of high performance libraries (like PARI, GMP, MAXIMA, SINGULAR, see this
+<a href="http://www.sagemath.org/packages/standard/">list</a>). <br />
+A number of other packages (including common lisp) already have interfaces
+based around a fake TTY device; this should be easy with mit-scheme. Or a more
+complete object-style interface could be implemented. There is documentation
+for writing interfaces <a href="http://www.sagemath.org/doc/prog/prog.html">
+here</a> and <a href="http://www.sagemath.org/doc/ref/node95.html">here</a>
+<br />
+There is a public demo server at <a href="http://sagenb.org">sagenb.org</a>,
+but it's usually slow. Try this
+<a href="https://sage.math.washington.edu:8102/">server</a> instead (user:
+ableseaman, password: bottlerum, if you don't want to fill out the form).
+Sage has been used in math classes at MIT already; Tim Abbot is working
+on "debianizing" the whole system, after which it should be on Athena.
+<br /><br />
+
+<b>Exploration of "higher order dynamics"</b>
+<span style="font-weight:bold; color:orange;">(possible)</span>
+<br />
+I'd like to play with systems involving "higher order dynamics", aka {jerk,
+yank, <a href="http://sprott.physics.wisc.edu/pubs/paper229.pdf">snap, crackle, pop</a>}. These dynamics have become interesting to cosmologists?
+<br />See arxiv <a href="http://arxiv.org/abs/gr-qc/0309109">one</a>, <a href="http://arxiv.org/abs/astro-ph/0408279">two</a>, other chaotic <a href="http://sprott.physics.wisc.edu/pubs/paper229.pdf">pdf</a>.
+<br /><br />
+
+<b>General Relativity Simulations: compact bodies, inspirals, precession</b>
+<span style="font-weight:bold; color:orange;">(possible)</span>
+<br />Should talk with <a href="http://gravity.psu.edu/people/LSF/">Lee Finn
+</a>@penn, <a href="http://mit.edu/pranesh/www/">pranesh</a>@mit? Go to
+<a href="http://space.mit.edu/journalclub/index.html">mki journal club</a>.
+<br /> <br />
+
+<b>Modified Newtonian Dynamics</b>
+<span style="font-weight:bold; color:orange;">(possible)</span>
+<br /><a href="http://en.wikipedia.org/wiki/Modified_Newtonian_dynamics">MOND</a>
+was originally proposed to explain the galactic rotation curve
+problem; it has been extended as a relativistic field theory as
+<a href="http://en.wikipedia.org/wiki/Tensor-vector-scalar_gravity">TeVeS</a>
+(Tensor-vector-scalar gravity, described in 2004).
+<br />
+I think it would be interesting to implement and play with MOND or other
+alternative gravitational theories in a symbolic computation framework.
+Assumptions could be checked quickly and easily (eg, behaves like X in the
+short distance limit, behaves like Y in the high stress-energy limit).
+The process of formalization could also be a good test; if the theory can't
+be coded, is it a valid theory? Would also demonstrate that programming tools
+are general and can be used to explore non-physical theories.
+<br />See also Henon-Heiles.
+<br /> <br />
+
+<b>Action Minimization Problems</b>
+<span style="font-weight:bold; color:orange;">(possible)</span>
+<br />
+Minimization of action over path integrals is a classic hammer in the physics
+toolbox (everything looks like an oscillating nail). It might be fun to
+play with some old classics like optics or Ohm-ic resistance.
+<br /><br />
+
+<b>Basic Quantum Mechanics</b>
+<span style="font-weight:bold; color:red;">(unlikely)</span>
+<br />Methods with Wilkson-Sommerfeld quantization? I don't know enough
+QM to go beyond simple, introductory quantum systems, but might be interesting.
+<br /><br />
+
+<b>Quantum Computation</b>
+<span style="font-weight:bold; color:red;">(unlikely)</span>
+<br />There is already extensive work done here; see
+<a href="http://tph.tuwien.ac.at/~oemer/qcl.html">http://tph.tuwien.ac.at/~oemer/qcl.html</a><br /><br />
+
+
+<h2>Resources</h2>
+The SICM text book is <a href="http://mitpress.mit.edu/SICM/">free online</a>;
+so is the <a href="http://mitpress.mit.edu/sicp/">SICP book</a>.
+</br />
+There is an unofficial <a href="http://groups.google.com/group/sicm">SICM mailing list</a>.<br />
+<br />
+<b>Papers to read?</b> (<a href="http://static.bryannewbold.com/toread/thought/">download</a>)
+<ul>
+ <li /><u>The Dynamicist's Workbench: Automatic Preparation of Numerical Experiments</u>, H. Abelson and G. Sussman
+ <li /><u>Simulating Physics with Computers</u>, R. Feynman
+ <li /><u>Functional Differential Geometry</u>, G. Sussman and J. Wisdom (2005)
+
+ <li /><u>Computer Programs for Calculating General-Relativistic Curvature Tensors</u>, J. Fletcher, R. Clemen, R. Matzner, K. Thorne, and B. Zimmerman (letter, 1967)
+ <li /><u>Intelligence in Scientific Computing</u>, H. Abelson, M. Eisenberg, M. Halfant, J. Katzenelson, E. Sacks, G. Sussman, J. Wisdom, and K. Yip
+ <li /><u>Abstraction in Numerical Methods</u>, M. Halfant and G. Sussman
+ <li /><u>The Role of Programming in the Formulation of Ideas</u>, G. Sussman and J. Wisdom
+ <li /><u>Scientific Comutation and Functional Programming</u>, J. Karczmarczuk (1999)
+ <li /><u>The Supercomputer Toolkit: A general framework for special-purpose computing</u>, H. Abelson, A. Berlin, J. Katzenelson, W. McAllister, G. Rozas, G. Sussman, and J. Wisdom (1991)
+
+</ul>
+</body>
+</html>
+
diff --git a/to_athena.sh b/to_athena.sh
new file mode 100644
index 0000000..d3bf910
--- /dev/null
+++ b/to_athena.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+scp -r journal bnewbold@linux.mit.edu:thesis/