A New Kind of Science Explorer: Mathematica Kit

The NKS Explorer: Mathematica Kit gives access to the functionality of NKS Explorer from within Mathematica. This enables you to run more in-depth experiments by incorporating the results into your own Mathematica programs. You can quickly generate hundreds of different graphics for visual inspection or perform various kinds of analysis on large data sets.This loads the package.

In[1]:=<<NKSExplorer`

Finding contents

Finding available contents.

Each available graphic is labeled by its page number in A New Kind of Science. If there are several different types of graphics on a page (page 80, for example), they are numbered 80.1, 80.2, and so on.This lists the available sections in Chapter 8.

In[2]:=NKSSections[8]

Out[2]={{8,2,"The Growth of Crystals"},{8,3,"The Breaking of Materials"},{8,5,"Fundamental Issues in Biology"},{8,6,"Growth of Plants and Animals"},{8,7,"Biological Pigmentation Patterns"},{8,8,"Financial Systems"}}

This lists the available page numbers in Section 8.6.

In[3]:=NKSPages[8,6]

Out[3]={400,402.1`,402.2`,402.3`,410,411.1`,411.2`,413,415,416}

Note that there are three different graphics available for page 402 and two different ones for page 411. This gives the description of a particular graphic.

In[4]:=NKSHelp[400]

The information given includes the title of the graphic and the general format of the NKSGraphics command for the page. There is also a description of each of the required input values, as well as the input values for the default graphic appearing in NKS Explorer.

Getting graphics and data

Producing graphics and data.

Possible options for NKSDisplay are Heading -> False (no annotation) and ImageSize -> Automatic (using Mathematica's default image size). The overall image size used by NKSDisplay can be rescaled by changing the value of the variable $NKSImageScale.

Getting the input values available as defaults and examples in NKS Explorer.

The basic command for accessing a graphic is NKSGraphics. If no inputs are given, the default graphic is returned.

In[5]:=NKSGraphics[400]//Show;

The corresponding raw data is accessed using NKSData.

In[6]:=Length[NKSData[400]]

Out[6]=7

This produces an annotated version of the graphic, using the default NKS Explorer image size.

In[7]:=NKSDisplay[400];

You can enter your own input values as the second argument to NKSGraphics, NKSData, and NKSDisplay.

In[8]:=NKSGraphics[400,{80,0.3,0.6,5}]//Show;

Each graphic in NKS Explorer comes with a set of default input values, and for many graphics there are also further sets of example input values, usually labeled (a), (b), and so on. This accesses them.

In[9]:=NKSDefault[400]

Out[9]={60,0.5`,0.6`,7}

In[10]:=NKSExamples[400]

Out[10]={{60,0.5`,0.6`,7},{45,0.55`,0.8`,7}}

This shows all examples for page 400.

In[11]:=With[{page=400},Map[NKSDisplay[page,#]&,NKSExamples[page]]];

You can also use the result from doing “copy input to clipboard” in NKS Explorer as an argument to NKSGraphics, NKSData, and NKSDisplay.

In[12]:=NKSGraphics[NKSXInput["NKS400",{"Chapter-08","Section-06","Page-400"},{"branch angle" -> 10,"branch growth rate" -> 0.5,"stem growth rate" -> 0.3,"steps" -> 6}]]//Show;

For convenient browsing of the contents of a whole chapter, use the NKSNotebook function.

In[13]:=NKSNotebook[8]

Out[13]=NotebookObject[<<"Untitled-2">>]

This will pop up a new notebook with a listing of all available contents in Chapter 8. For each graphic, there is an unevaluated Input cell which would produce the default version of the graphic. To show all default graphics in a given section or a whole chapter, simply select all the cells and evaluate them. The complete set of such notebooks is also available directly in the Help Browser.