the ADMB-IDE manual

the ADMB-IDE manual
AD Model Builder IDE
Emacs admb-mode without the Emacs
Version 11.6 (2017-08-30)
Arni Magnusson
This is the manual for AD Model Builder IDE (ADMB-IDE) version 11.6.
The latest edition of the manual is available at:
http://admb-project.org/tools/admb-ide/
c 2009–2012, 2015, 2017 Arni Magnusson
Copyright To cite ADMB-IDE, use the newsletter article (see [References], page 21) as a fixed reference.
AD Model Builder IDE is an aggregate of the following software components:
• AD Model Builder 11.6 is released under the BSD License.
Source code: https://github.com/admb-project/admb
• GNU Emacs 25.2.1 is released under the GPL.
Source code: http://ftp.gnu.org/gnu/emacs/
• ADMB Mode 11.6 for Emacs is released under the Simplified BSD License.
Source code: https://github.com/admb-project/admb/blob/master/contrib/emacs
• AUCTEX 11.91 is released under the GPL.
Source code: http://ftp.gnu.org/gnu/auctex/
• Emacs Speaks Statistics (ESS) 16.10-1 is released under the GPL.
Source code: http://ess.r-project.org/downloads/ess/
• TMB Mode 3.2 for Emacs is released under the GPL.
Source code: https://github.com/kaskr/adcomp/blob/master/emacs
• ADMB-IDE .emacs 11.6 is released under the Simplified BSD License.
Source code: https://github.com/admb-project/admb/blob/master/contrib/ide/dot
• GCC 4.9.3 is released under the GPL.
Source code: http://ftp.gnu.org/gnu/gcc/
• GDB 7.3.50 is released under the GPL.
Source code: http://ftp.gnu.org/gnu/gdb/
i
Table of Contents
1
Preamble . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.1
2.2
2.3
3
Tutorial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.1
3.2
3.3
4
Emacs admb-mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
ADMB-IDE for Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
ADMB-IDE for Linux/Mac OS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Create a working copy of simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Build, run, and view the results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Debug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.1
4.2
4.3
Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Shortcut keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
5
Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
6
Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
6.1
6.2
7
General usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Chapter 1: Preamble
1
1 Preamble
The purpose of ADMB-IDE is to make the convenient features of Emacs admb-mode available
to non-Emacs users. In other words, to disable the standard Emacs behavior.
Experienced Emacs users may prefer to ignore the ADMB-IDE .emacs file, and simply install
and load admb.el like other Emacs packages. It is a standard “major mode” that follows all
Emacs mode conventions.
Chapter 2: Introduction
2
2 Introduction
2.1 Emacs admb-mode
The process of creating statistical models with AD Model Builder (ADMB) involves writing,
compiling, and testing. An integrated development environment (IDE) allows the user to perform
these tasks more efficiently than with a basic editor and a shell.
GNU Emacs is a complex and powerful editor that comes with particularly good support
for C++, R, LATEX, backup/revision control, and other useful tools for statistical computing. Its
admb-mode provides syntax highlighting, compilation, file manipulation, outline code navigation,
templates, and smaller tools for creating ADMB models. Emacs users can fetch admb-mode from
https://github.com/admb-project/admb/blob/master/contrib/emacs/admb.el and start
using it right away, after reading the commentary at the top of the file.
The problem with Emacs is that it requires considerable time to learn and configure, although
for advanced statistical computing this can be a rewarding investment. As the programmer
Larry Wall once said: “If ease of use was the highest goal, we’d all be driving golf carts.” The
http://admb-project.org/tools/editors/emacs/ page contains some pointers for setting up
and learning Emacs. There are, however, good reasons why many users may not feel like adopting
Emacs as their main editor, but would still appreciate a simple IDE for ADMB.
The rest of this tutorial demonstrates how Emacs with admb-mode can be configured as
a user-friendly ADMB-IDE, without learning the details of Emacs. This is achieved with an
unusual .emacs configuration file that emulates common keybindings of basic editors, while
disabling some of the most used Emacs keybindings. This .emacs file is therefore not intended
for experienced Emacs users, although they may find it an interesting read.
2.2 ADMB-IDE for Windows
There are two ways to install ADMB-IDE for Windows: use an installer or set up the individual
components by hand.
Installer
The admb-ide-116-win64.exe installer sets up the main components (ADMB, Emacs, Rtools)
with a customized Emacs user interface, file associations, and environment variables to glue
everything together. The only catch is that the user must accept the default directory structure,
and select whether Rtools is already installed on the machine:
Chapter 2: Introduction
3
The ADMB-IDE components are arranged in four main directories:
c:/~
Settings and Emacs modes
c:/admb
ADMB
c:/gnu/emacs
Emacs
c:/Rtools
GCC and GDB
It can be problematic to have more than one version of GCC installed on a Windows machine,
especially if multiple versions of GCC are active in the PATH. Many Windows users already have
Rtools installed, so the idea behind having ADMB-IDE use the GCC compiler from Rtools is to
reduce the likelihood of GCC version conflicts.
The directory structure above can be practical for setting up and configuring other free
software, such as R. By separating the main program (c:/gnu/r) from the user settings
(c:/~/.Rprofile, c:/~/Rconsole) and packages (c:/~/r/library), the main program can
be removed and upgraded without affecting the user setup.
One thing to keep in mind is that the installer modifies the user PATH and file associations. In
rare cases, users may need to reconfigure these after installing ADMB-IDE. Therefore, advanced
users may choose to deselect these options during the installation.
Manual setup
Users can also set up and configure the individual components by hand, starting from the
admb-ide-116-win64.zip kit. The following guidelines may be useful for that:
http://admb-project.org/docs/
http://admb-project.org/tools/editors/emacs/install
http://admb-project.org/tools/editors/emacs/configure
https://cran.r-project.org/bin/windows/Rtools/
See also the chapters on [ADMB-IDE for Linux/Mac OS], page 4 and [Troubleshooting], page 19
in this manual.
Chapter 2: Introduction
4
2.3 ADMB-IDE for Linux/Mac OS
Setting up ADMB-IDE for Linux or Mac OS is equivalent to the “manual setup” described
above, so the same guidelines apply. The key steps are:
1. Install ADMB, Emacs, GCC (including the C++ component), and GDB.
2. Download the ADMB-IDE .emacs configuration file and place it in ~/.emacs to apply the
simplified Emacs user interface.
3. Download ADMB Mode admb.el and place it in ~/emacs/lisp/admb/admb.el to provide
syntax highlighting and IDE features.
The tutorial in the next chapter uses Windows, but ADMB-IDE is very similar in Linux:
Chapter 3: Tutorial
5
3 Tutorial
3.1 Create a working copy of simple
First open Windows Explorer and create a folder called c:/simple. Then navigate to
c:/admb/admb116-gcc493-win64/examples/admb/simple and copy the model and data files,
creating:
c:/simple/simple.dat
c:/simple/simple.tpl
Now double-click simple.tpl in the c:/simple folder. The file should open in Emacs in
admb-mode (see red circle) and the code should be in color:
Chapter 3: Tutorial
6
3.2 Build, run, and view the results
Build the model by clicking the
Run the model by clicking the
icon, or press f8:
icon, or press f9:
Chapter 3: Tutorial
7
Many ADMB models output their results to a .rep report file, and ADMB-IDE provides the
icon and f10 key to open the report file. The simple model outputs no report file, but the
parameter estimates, standard errors, and correlations are found in the .cor file.
This is an opportunity to introduce basic buffer and window management. In Emacs, a
buffer is like a page, often representing a file, but sometimes other things, like the compilation
and command output buffers in the previous two screenshots. The Emacs screen is divided into
one or more windows, where each window shows one buffer, while other buffers reside in the
background. Explore the Buffers menu, as well as [Shortcut keys], page 16.
Try out different ways to open the .cor file:
1. Press escape to maximize the active window. Then click the
icon or press C-o (Ctrl
and o) and select c:/simple/simple.cor.
2. Press escape to maximize the active window, C-x 3 to split into two windows, and select
the window on the right with a mouse click or f6. Click the icon or press C-o and select
c:/simple/simple.cor.
3. Click the ADMB → View Estimates menu entry or press S-f10.
4. Click the ADMB → View Any menu entry or press C-p, then type ‘cor’ and return.
Chapter 3: Tutorial
8
After viewing, maximize a window by pressing escape, or close a window by clicking the
icon or pressing C-w or C-f4.
Note how the ADMB menu and toolbar icons are only available when the active window is in
admb-mode. Press f2 at any point to switch a window to admb-mode.
Chapter 3: Tutorial
9
3.3 Debug
Types of bugs
Bugs in ADMB models can be categorized by the point of discovery:
1. tpl2cpp reports a bug (cannot translate)
2. g++ reports a bug (cannot compile or link)
3. The model builds fine, but crashes or writes no output when run (no results)
4. The model runs fine, but not like it is supposed to (strange results)
Locating bugs
• Warnings or error messages indicate line number, or function/variable name
• Insert lines of code that print informative messages during runtime
• Comment out parts of the code
• Use a debugger
Example 1: tpl2cpp reports a bug
Create a bug by inserting an extra space inside a vector declaration: init_vector Y(1,nobs)
→ init_vector Y(1, nobs). Then click the
icon or press f7 to translate TPL to C++:
The tpl2cpp translator reports an error in line 36 of simple.tpl. Click Edit → Go To →
Goto Line or press C-g to move the cursor to that line, and then remove the unwanted space.
Chapter 3: Tutorial
10
Example 2: g++ reports a bug
Create a bug by referring to a nonexistent variable: init_vector Y(1,nobs) → init_vector
Y(1,n). Then click the
icon or press f8 to build the model:
The g++ compiler reports an error in line 11 of simple.cpp. Click the highlighted filename
to open the C++ source file with the cursor in that line. After realizing what the problem is
(with the help of the error message ‘n’ was not declared in this scope), go back to the
ADMB code in simple.tpl and change the ‘n’ to ‘nobs’.
Chapter 3: Tutorial
11
Example 3: No results
Create a bug by dividing by zero at the top of the DATA_SECTION: !! cout << 1/0 << endl;.
Then click the icon or press f8 to build the model. Ignoring the warning, click or press f9
to run the model:
The shell command simple exits abnormally with code 1, a generic code for failure. The
easiest way to search for this bug is to insert informative messages in the code, like
DATA_SECTION
!! cout << "DATA_SECTION begins" << endl;
...
!! cout << "DATA_SECTION ends" << endl;
and/or simplify the model, possibly by commenting out parts of the code. After narrowing
the search step by step, the problematic line(s) can be changed or removed. To comment or
uncomment large parts of code, use the M-; keystroke (see [Shortcut keys], page 16).
Chapter 3: Tutorial
12
Example 4: Strange results
Create a bug by dividing by zero in a PROCEDURE_SECTION assignment: pred_Y=a*x+b; →
pred_Y=a*x+b/0;. Then click the
icon or press f8 to build the model (this time there is no
compiler warning). Click
or press f9 to run the model:
The ADMB on-screen report indicates successful convergence (exit code 0) with an objective
function value of ‘-1.#INDe+000’, while Emacs reports failure (exit code 1). The easiest way to
search for this bug is to insert informative messages in the code, like
PROCEDURE_SECTION
cout << "The value of a
is: " << a
<< endl;
cout << "The value of a*x is: " << a*x << endl;
cout << "The value of b
is: " << b
<< endl;
cout << "The value of b/0 is: " << b/0 << endl;
cout << "The value of f
is: " << f
<< endl;
and/or simplify the model, possibly by commenting out parts of the code. A more advanced
option is to use a debugger.
Chapter 3: Tutorial
13
GDB: When the going gets tough
Emacs and GCC can interact closely with the GDB debugger—these programs were all created
by the same programmer, Richard Stallman. A program must fulfill two conditions before
debugging:
• The model executable (e.g., simple.exe) must build successfully, so a debugger is only
helpful for bugs of type 3 and 4 (see [Types of bugs], page 9).
• The model executable must include debugging symbols. To embed debugging symbols with
ADMB-IDE, either select “Debug” compilation from the ADMB → Target menu, or press
C-- g (Ctrl and -, then g), followed by return.
Using GDB to debug an ADMB model is beyond the scope of this tutorial, but when simpler
debugging methods fail, it is time to click Tools → Debugger (GDB):
Chapter 4: Interface
14
4 Interface
4.1 Menu
Menu label
Purpose
Emacs command
Translate
Compile
Link
Build
Translate TPL to C++
Compile C++ to object code
Link object code to exe
Build executable from TPL
admb-tpl2cpp
admb-compile
admb-link
admb-make
Run
Run with Args
Run Makefile
Run executable
Run executable with args
Run Makefile in current dir
admb-run
admb-run-args
admb-run-makefile
View Report
View Estimates
View Point Estimates
View Initial Values
View C++
View Any
Clean Directory
Open .rep file
Open .cor file
Open .par file
Open .pin file
Open C++ file
Open model file
Remove temporary files
admb-rep
admb-cor
admb-par
admb-pin
admb-cpp
admb-open
admb-clean
Outline
Imenu
Template
Mini Template
Toggle Section
Toggle Window
Navigate with outline
Navigate with imenu
Insert template
Insert minimal template
Toggle section indicator
Toggle secondary window
admb-outline
imenu
admb-template
admb-template-mini
admb-toggle-section
admb-toggle-window
Target
Choose what to build
admb-set-flags
Help
ADMB Mode Version
Show help page
Show ADMB Mode version
admb-help
admb-mode-version
Chapter 4: Interface
15
4.2 Toolbar
Icon
Purpose
Emacs command
New buffer
new-buffer
Open file
find-file
Save file
save-buffer
Cut
kill-region
Copy
copy-region-as-kill
Paste
cua-paste
Undo/redo
undo
Close
kill-this-buffer
Translate TPL to C++
admb-tpl2cpp
Build executable from TPL
admb-make
Run executable
admb-run
Open .rep file
admb-rep
Chapter 4: Interface
16
4.3 Shortcut keys
In combinations, ‘S-’ means Shift, ‘C-’ means Ctrl, and ‘M-’ means the Alt key.
Keystroke
Purpose
Emacs command
f1
S-f1
f2
f3
f4
C-f4
M-f4
f5
f6
C-f6
f7
f8
f9
f10
S-f10
f11
f12
S-f12
Help
Show ADMB-IDE version
ADMB mode
Data mode
Toggle secondary window
Close
Quit
Reload
Other window
Next buffer
Translate TPL to C++
Build executable from TPL
Run executable
Open .rep file
Open .cor file
Navigate with outline
Insert template
Insert minimal template
admb-help
admb-ide-version
admb-mode
conf-unix-mode
admb-toggle-window
kill-buffer-maybe-window
save-buffers-kill-emacs
revert-buffer
other-window
next-buffer
admb-tpl2cpp
admb-make
admb-run
admb-rep
admb-cor
admb-outline
admb-template
admb-template-mini
C-C-,
C-.
C-a
C-b
C-c
C-f
C-g
C-h
C-l
C-n
C-o
C-p
C-q
C-r
C-s
C-S
C-v
C-w
C-x
C-x 2
C-x 3
C-z
C-return
C-space
Toggle compilation flags
Toggle trailing whitespace
Toggle section indicator
Select all
Next buffer
Copy
Find, find next
Goto line
Emacs help system
Recenter
New
Open
Open in other window
Quit
Replace
Save
Save as
Paste
Close
Cut
Split window above/below
Split window left/right
Undo/redo
Rectangle functions
Expand recognized words
admb-toggle-flag
toggle-trailing-whitespace
admb-toggle-section
mark-whole-buffer
next-buffer
cua--prefix-override-handler
isearch-forward
goto-line
help
recenter
new-buffer
find-file
admb-open
save-buffers-kill-emacs
query-replace
save-buffer
write-file
cua-paste
kill-buffer-maybe-window
cua--prefix-override-handler
split-window-vertically
split-window-horizontally
undo
cua-set-rectangle-mark
dabbrev-expand
Chapter 4: Interface
17
C-M-space
M-,
M-;
escape
Open recent files
Delete trailing whitespace
Comment/uncomment region
Cancel dialog, maximize window
recentf-open-files
delete-trailing-spc-tab-m
comment-dwim
keyboard-escape-quit
Mouse button
Purpose
Emacs command
C-left
right
Switch buffers
Navigate with imenu
mouse-buffer-menu
imenu
ADMB-IDE does not emulate perfectly the way many editors open menus with the Alt key. To
open the Edit menu, for example, it is not enough to press Alt and e simultaneously. ADMBIDE provides four ways to open the Edit menu:
1. Mouse click on the menu bar
2. Tap Alt first and then e (Windows)
3. Hold Alt and tap e twice (Windows)
4. Hold Alt and tap f, then release Alt and tap right arrow (Linux)
The idea behind ADMB-IDE, however, is that users can memorize intuitive keystrokes to
undo, cut, copy, paste, find, replace, and goto line, without opening the Edit menu. Also don’t
forget that ADMB-IDE is open source, so users are free to modify any part of the program,
including the keybindings defined in the .emacs file.
Longtime users of the Vi editor can turn on Emacs evil-mode or viper-mode, which are
full-featured Vi emulators for Emacs.
Chapter 5: Configuration
18
5 Configuration
Personal .emacs file
ADMB-IDE is intended for people who don’t know Emacs, are not interested in learning it, and
will only use it to work with ADMB. The design goal is that ADMB-IDE should work out of
the box and get the job done with minimum fuss.
It is, however, in the nature of modellers to experiment and improve. Users who modify the
original .emacs file are no longer using ADMB-IDE, but Emacs with admb-mode and a personal
.emacs file. One reason to modify the .emacs file or write a new one from scratch is to install
additional Emacs packages. Another reason is to redefine the keybindings, probably closer to
the Emacs defaults. Other reasons include setting fonts and colors, setting user variables, or
defining new user functions. Users with a personal .emacs file can update ADMB, Emacs, GCC,
GDB, and admb-mode independently, or salvage pieces from a recent ADMB-IDE zip bundle.
Note that it is not advisable to configure Emacs by clicking Options → Save Options or
Options → Customize Emacs. Editing the .emacs file directly is a more reliable and transparent approach. See http://admb-project.org/tools/editors/emacs for guidelines.
Example
The f10 key in ADMB-IDE runs admb-rep to a open a report file:
(local-set-key [f10]
’admb-rep
) ; menu-bar-open
The semicolon starts a comment, reminding that the default behavior of Emacs is to run menubar-open when f10 is pressed. In ADMB-IDE, it is easy to activate the menu bar with the
mouse or the Alt key, so f10 can be used for something else. The liberal spacing is to align
surrounding lines of code, but neither the comment nor multiple spaces are necessary.
Some users may find it practical to open the report file in an external browser, rather than
inside ADMB-IDE. The report file is often best viewed in a large window, and the ADMB-IDE
windows are somewhat busy showing other things. It is easy to rebind the f10 key,
(local-set-key [f10]
’admb-rep-browser
) ; menu-bar-open
but as mentioned in the documentation of admb-rep-browser, the .rep file ending in Windows
may need to be associated with the desired browser program, Firefox or the like.
Canned ADMB-IDE
It can be practical to make a canned version of ADMB-IDE available, while using a different
.emacs file for most Emacs sessions. For example, an experienced Emacs user may want to test
how ADMB-IDE works, or demonstrate it to colleagues, without constantly shuffling .emacs
files. In Windows, one can place the ADMB-IDE .emacs file in c:/admb/ide and then start
ADMB-IDE with the shell command:
c:/gnu/emacs/bin/runemacs.exe -Q -l c:/admb/ide/.emacs -f admb-mode
The -Q option tells Emacs to ignore the default startup file(s), the -l tells it to load a Lisp
file, and the -f tells it to call a function. This command can be used in a start menu or desktop
shortcut, with the c:/~/icons/admb64.ico decorative icon, and similar tricks can be used in
Linux and Mac OS.
Chapter 6: Troubleshooting
19
6 Troubleshooting
6.1 General usage
The ADMB menu and toolbar icons disappear
These only appear when the current buffer is in admb-mode. Either switch to a .tpl buffer that
is already in admb-mode, or press f2 to switch to admb-mode in the current buffer. Other modes
may have special menus and toolbar icons that are useful for that mode, see for example the
[GDB screenshot], page 13.
Undo/redo
The undo command in ADMB-IDE does both undo and redo. When undo is performed repeatedly, it goes further back in the undo history. Any command other than undo will interrupt
this sequence, and from that point the previous undo commands become ordinary changes that
can be undone, equivalent to redo. Try, for example, copying some text and then paste it three
times. Now undo three times, interrupt with a harmless key like the up arrow, and then undo
again to redo. To undo all changes since last save, it’s easiest to reload using the f5 key.
The Tab key does not indent code properly
ADMB-IDE does not know the appropriate indentation of every line, so generally users indent
their code manually using Space and Backspace. The Tab key is programmed to insert a number
of spaces, as suggested by the previous line, which is sometimes useful.
Lines end with strange ^M characters
This is how Emacs shows Dos line endings, although in most cases Dos line endings are handled
more gracefully. It could be that the file contains mixed line endings (both Dos and Unix), and
the simplest solution is to delete all ^M characters. It could also be that the Emacs variable
file-name-buffer-file-type-alist matches the .tpl file ending, and the simplest solution
is to set that variable to nil.
Clicking ADMB → Run Makefile returns an error
Makefiles are a sophisticated build automation tool, not required for general ADMB usage. This
command invokes the make program that looks for a file called Makefile. If the make program
or the makefile is not found, an error is returned. This feature is provided for advanced users
who have prepared a makefile in the working directory.
6.2 Configuration
Double-clicking a .tpl file does not open it in Emacs
The .tpl file ending needs to be associated with Emacs. This can be done with registry entries
or in Windows Explorer folder options.
Emacs cannot load admb-mode
The directory containing the admb.el file needs to be in the Emacs variable load-path, and
the admb-mode command needs to be autoloaded in the .emacs configuration file.
Chapter 6: Troubleshooting
20
Compilation commands are not recognized
The PATH environment variable needs to point to the directories containing the compilation
programs (tpl2cpp, tpl2rem), scripts (admb, adcomp, adlink), and the g++ program. Likewise,
the ADMB_HOME environment variable needs to point to the main ADMB directory. Windows
environment variables can be set using Dos scripts like c:/~/bat/admb-set.bat, or by rightclicking the My Computer icon, then Properties → Advanced → Environment Variables
→ User variables → New.
Limited user (i.e., non-administrator) accounts in Windows can also prevent the ADMB-IDE
installer from setting the environment variables ADMB_HOME and PATH. In those cases, the rightclick-properties method described above can be used to set the variables after the installation.
Many Linux distributions include only the C component of GCC, so users need to install the
optional C++ component before using ADMB.
Chapter 7: References
21
7 References
ADMB
Fournier, D.A., H.J. Skaug, J. Ancheta, J. Ianelli, A. Magnusson, M.N. Maunder, A. Nielsen,
and J. Sibert. 2012. AD Model Builder: Using automatic differentiation for statistical inference
of highly parameterized complex nonlinear models. Optimization Methods and Software 27:233–
249.
http://dx.doi.org/10.1080/10556788.2011.597854
Fournier, D. 2016. An introduction to AD Model Builder for use in nonlinear modeling and
statistics. Version 11.6.
http://admb-project.org/docs/manuals/
Skaug, H. and D. Fournier. 2016. Random effects in AD Model Builder: ADMB-RE user guide.
Version 11.6.
http://admb-project.org/docs/manuals/
Fournier, D. 2016. AUTODIF: A C++ array language extension with automatic differentiation
for use in nonlinear modeling and statistics. Version 11.6.
http://admb-project.org/docs/manuals/
Magnusson, A. 2009. ADMB-IDE: Easy and efficient user interface. ADMB Foundation
Newsletter 1(3):1–2.
http://admb-foundation.org/wp-content/uploads/Newsletter/ADMBNewsletterJuly2009.pdf
Emacs
Stallman, R. 2017. GNU Emacs manual. 17th ed. Updated for Emacs version 25.2.
http://www.gnu.org/software/emacs/manual/emacs.html
Lewis, B., D. LaLiberte, R. Stallman, and the GNU Manual Group. 2017. GNU Emacs Lisp
reference manual for Emacs version 25.2. Rev. 3.1.
http://www.gnu.org/software/emacs/manual/elisp.html
Chassell, R. 2009. An introduction to programming in Emacs Lisp. Rev. 3.10.
http://www.gnu.org/software/emacs/manual/eintr.html
GCC
Stallman, R.M. and GCC Developer Community. 2015. Using the GNU Compiler Collection.
Version 4.9.3.
http://gcc.gnu.org/onlinedocs/
GDB
Stallman, R., R. Pesch, S. Shebs, et al. 2011. Debugging with GDB: The GNU source-level
debugger. 10th ed. for GDB version 7.3.
http://sourceware.org/gdb/download/onlinedocs/
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement