Classes | Typedefs
OSnLNode.h File Reference

This file defines the OSnLNode class along with its derived classes. More...

#include "OSConfig.h"
#include "OSGeneral.h"
#include "OSErrorClass.h"
#include <iostream>
#include <vector>
#include <map>
Include dependency graph for OSnLNode.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ExprNode
 A generic class from which we derive both OSnLNode and OSnLMNode. More...
 
class  OSnLNode
 The OSnLNode Class for nonlinear expressions. More...
 
class  OSnLNodePlus
 The OSnLNodePlus Class. More...
 
class  OSnLNodeSum
 The OSnLNodeSum Class. More...
 
class  OSnLNodeMax
 The OSnLNodeMax Class. More...
 
class  OSnLNodeMin
 The OSnLNodeMin Class. More...
 
class  OSnLNodeMinus
 The OSnLNodeMinus Class. More...
 
class  OSnLNodeNegate
 The OSnLNodeNegate Class. More...
 
class  OSnLNodeTimes
 The OSnLNodeTimes Class. More...
 
class  OSnLNodeDivide
 The OSnLNodeDivide Class. More...
 
class  OSnLNodePower
 The OSnLNodePower Class. More...
 
class  OSnLNodeProduct
 The OSnLNodeProduct Class. More...
 
class  OSnLNodeLn
 The OSnLNodeLn Class. More...
 
class  OSnLNodeSqrt
 The OSnLNodeSqrt Class. More...
 
class  OSnLNodeSquare
 The OSnLNodeSquare Class. More...
 
class  OSnLNodeCos
 The OSnLNodeCos Class. More...
 
class  OSnLNodeSin
 The OSnLNodeSin Class. More...
 
class  OSnLNodeExp
 The OSnLNodeExp Class. More...
 
class  OSnLNodeAbs
 The OSnLNodeAbs Class. More...
 
class  OSnLNodeErf
 The OSnLNodeErf Class. More...
 
class  OSnLNodeIf
 The OSnLNodeIf Class. More...
 
class  OSnLNodeNumber
 The OSnLNodeNumber Class. More...
 
class  OSnLNodeE
 The OSnLNodeE Class. More...
 
class  OSnLNodePI
 The OSnLNodePI Class. More...
 
class  OSnLNodeVariable
 The OSnLNodeVariable Class. More...
 
class  OSnLNodeAllDiff
 The OSnLNodeAllDiff Class. More...
 
class  OSnLNodeMatrixDeterminant
 The next few nodes evaluate to a scalar even though one or more of its arguments are matrices. More...
 
class  OSnLNodeMatrixTrace
 The OSnLNodeMatrixTrace Class. More...
 
class  OSnLNodeMatrixToScalar
 The OSnLNodeMatrixTrace Class. More...
 
class  OSnLMNode
 The OSnLMNode Class for nonlinear expressions involving matrices. More...
 
class  OSnLMNodeMatrixPlus
 
class  OSnLMNodeMatrixSum
 
class  OSnLMNodeMatrixMinus
 
class  OSnLMNodeMatrixNegate
 
class  OSnLMNodeMatrixTimes
 
class  OSnLMNodeMatrixInverse
 
class  OSnLMNodeMatrixTranspose
 
class  OSnLMNodeMatrixScalarTimes
 
class  OSnLMNodeMatrixDotTimes
 
class  OSnLMNodeIdentityMatrix
 
class  OSnLMNodeMatrixLowerTriangle
 
class  OSnLMNodeMatrixUpperTriangle
 
class  OSnLMNodeMatrixDiagonal
 
class  OSnLMNodeDiagonalMatrixFromVector
 
class  OSnLMNodeMatrixSubmatrixAt
 
class  OSnLMNodeMatrixReference
 
class  OSnLMNodeMatrixVar
 
class  OSnLMNodeMatrixObj
 
class  OSnLMNodeMatrixCon
 
class  OSnLMNodeMatrixProduct
 The OSnLMNodeMatrixProduct Class. More...
 

Typedefs

typedef double ADdouble
 
typedef std::vector< ADdoubleADvector
 

Detailed Description

This file defines the OSnLNode class along with its derived classes.

Author
Robert Fourer, Horand Gassmann, Jun Ma, Kipp Martin
Remarks
Copyright (C) 2005-2015, Robert Fourer, Horand Gassmann, Jun Ma, Kipp Martin, Northwestern University, and the University of Chicago. All Rights Reserved. This software is licensed under the Eclipse Public License. Please see the accompanying LICENSE file in root directory for terms.

In this file we define classes for a subset of the nodes defined in the OSnL schema These nodes fall into two broad classes: Those that evaluate to scalar values (which inherit from OSnLNode), and those that evaluate to matrices (and inherit from OSnLMNode). OSnLNodes can have OSnLMNode children (e.g., matrixDeterminant) and vice versa (e.g., matrixScalarTimes). Both OSnLNode and OSnLMNode inherit from the base class ExprNode.

Definition in file OSnLNode.h.

Typedef Documentation

typedef double ADdouble

Definition at line 39 of file OSnLNode.h.

typedef std::vector<ADdouble> ADvector

Definition at line 40 of file OSnLNode.h.