Error: Failed to load processor TOC
No macro or processor named 'TOC' found

GISS GSO model on OS X

Introduction

  • The GISS GSO model runs on Apple G5 computers (OS X 10.4.x)
  • The model uses multiple processors when available.
  • Current version is source:GCM/GSO/trunk/
  • Commands you type in the shell are in boxes, normal font. Comments and hints are italicized and gray, and the output from the commands that you should see is preceded with a >
    echo hello world # say hello!
    > hello world

Download and Installation

  • Get the latest code
    svn co svn+ssh://edgcm.columbia.edu/opt/svn/repos/GCM/GSO/trunk ./GSO
    # You will need to enter your password 3x if you do not have ssh keys installed
    
    # If you would like an earlier snapshot of the code you can fetch that too
    svn co -r560 svn+ssh://edgcm.columbia.edu/opt/svn/repos/GCM/GSO/trunk ./GSO_rev560
  • Add the data/ folder under your working directory (GSO_inputs.tgz from ftp://edgcm.columbia.edu/)
    cd GSO
    curl -O http://edgcm.columbia.edu/downloads/GSO_inputs.tgz
    tar -zxvf GSO_inputs.tgz; # you can now delete this file
    ls -p
    > GSO_inputs.tgz  GSOpH2M12.R  GSOtemplate/  GSOtemplate.R  Makefile  code/  data/  startexe

Compile

In order to compile you need the XLF FORTRAN compiler. At the time of this writing we are using version 8.1

Most commands to compile, build, start, and stop the model are issued through the make command and the Makefile.

make

> RUNID defaults to GSOpTEST unless RUNID=x passed to make
> RUNID valid argument to everything except 'build'
>  
> make build        # compile code to objects
> make exe          # create executable (startexe)
> make start        # start the model (E)
> make debug        # debug the model (gdb)
> make stop         # stop the model (fort.3)
> make kill         # stop the model (SIGHUP)

# note that GSOpTEST is the same as GSOpH2M12, but with a more generic name
  • To compile the model
    make build
    # a lot of ouput from compilation process
    
  • To create the executable:
    make exe RUNID=GSOpH2M12
    
    > customize I and GSOpH2M12.R in ./GSOpH2M12
    > move fort.1 and fort.2 to ./GSOpH2M12
    
  • An I file is supplied (copy of GSOpH2M12 I file).
  • A .R file is also supplied (copy of GSOpH2M12 .R file).
  • A sample fort.1.1DEC1950_Hr1 is supplied in the data folder. You can copy this to both fort.1 and fort.2 to initialize a run

Starting (and Stopping)

  • To start your run
    make start RUNID=GSOpH2M12
    
    # To put in background, you can then do:
    CTRL+z
    bg
    
    # you may now exit the Terminal
    
  • To stop your run
    make stop RUNID=GSOpH2M12

Debugging

  • You need to compile with special flags
    make clean
    make build FFFLAGS=-g
    make exe RUNID=GSOpH2M13
    # copy in fort.1 & fort.2
    make debug RUNID=GSOpH2M13
    # the model is now running inside of gdb