Code Monkey home page Code Monkey logo

triad's Introduction

                              T R I A D 
          Copyright (C) 2000-2016 John C. Bowman ([email protected])

INTRODUCTION
============

Triad is an object-oriented C++ kernel for integrating initial value problems.

Design priorities, in order of priority:

1. High-performance computing

2. Portability

3. Object-oriented construction (reusable code)

4. Easy user-interface for data entry and output (eg., using XDR)

COMPILATION
===========

This program has been successfully compiled and tested on i386, alpha,
rs6000, sun, sgi, and t3e UNIX platforms. To compile, simply say in the
appropriate problem-dependent directory:

make

For better optimization, one can specify compiler-dependent optimization
flags, for example:

make CFLAGS="-O3 -DNDEBUG"

EXECUTION
===========

The command line is

triad [<options>]

<options> is a list of assignments, delimited by spaces, of the form A=B.

One of the most important options is the "run" name. Consider, for example,
the command line

triad run=test dt=1

The run name is associated with the parameter file test/p, which contains
further parameters assignments, separated by whitespace. Except for the run
name itself, command line assignments override parameter file
assignments. Thus, in the above example, the run "test" is begun, using
the time step of 1, regardless of what time step may be specified in the
parameter file. The default run name is "test".

Examples:

triad itmax=10
	This evolves run test 10 time steps, producing whatever output
        files are specified by the problem-dependent portion of the code,
        along with restart and statistics files and a parameter file in a
        format suitable for a graphics program (such as sm). On each run,
        the parameter file is overwritten with the current values, so that
        the program effectively "remembers" previous command-line settings.
	
triad itmax=10 restart=1
	This restarts a previous run ("test") and executes an additional 10
        time steps.

triad itmax=10 init=1
	This evolves run test 10 time steps, using as initial values the final
        values computed the last time this case was run. 

triad itmax=10 clobber=1
	This evolves run test 10 time steps, overwriting a previous restart
        file.

triad itmax=10 dynamic=1 tolmax=.5 tolmin=.05
	A typical example of dynamic time-stepping parameters that lead
        to efficient computation without numerical instability.

triad itmax=10 tmax=2.0
	This evolves run test for 10 time steps or for 2.0 time units,
        whichever is less. This is useful when dynamic time stepping is
        enabled and it is desired to terminate computation at a fixed time.

triad itmax=10 sample=1.0
	This evolves run test for 10 time steps, producing output files at
        exactly at ever 1.0 time units. This is useful when dynamic time
        stepping is enabled and it is desired to produce uniformly spaced
        output values.

triad itmax=10 dynamic=0
	This disables the dynamic time-stepping mechanism.

The complete list of kernel commands is

itmax
microsteps
tmax
dt
dynamic
tolmax
tolmin
stepfactor
stepnoninvert
dtmin
dtmax
tprecision
sample
polltime
hybrid
digits
restart
initialize
clobber
override
verbose
run
checkpoint
output
method
integrator

Each problem will generally define other commands to set various user
supplied parameters.

*** FURTHER DOCUMENTATION TO BE ADDED ***

triad's People

Contributors

johncbowman avatar malcolmroberts avatar alamj avatar pedram-emami avatar

Watchers

James Cloos avatar  avatar  avatar

Forkers

jhssyb

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.