 |
Nabla
1.0
Nabla - a DSL for Automatic differentiation
|
Go to the documentation of this file.
20 Node*
_variable(std::string name,
int m,
int n, std::vector<std::vector<double>> vals);
22 Node*
_constant(std::string name,
int m,
int n, std::vector<std::vector<double>> vals);
56 void DFS(std::ostream& out,
Node* f);
Graph()
Definition: Graph.cpp:5
Node * _neg(Node *a)
Definition: Graph.cpp:143
void backward(Node *f)
Definition: Graph.cpp:222
std::vector< Node * > constants
Definition: Graph.h:18
void generate_graph(Node *f)
Definition: Graph.cpp:267
Node * _scalar_variable(std::string name, double data=0)
Definition: Graph.cpp:202
Node * _sub(Node *a, Node *b)
Definition: Graph.cpp:61
Node * _mul(Node *a, Node *b)
Definition: Graph.cpp:101
std::vector< Node * > variables
Definition: Graph.h:18
void DFS(std::ostream &out, Node *f)
Definition: Graph.cpp:256
int count
Definition: Graph.h:17
Node * _matmul(Node *a, Node *b)
Definition: Graph.cpp:14
Node * _sin(Node *a)
Definition: Graph.cpp:157
std::vector< Node * > operators
Definition: Graph.h:18
std::vector< Node * > topological_sort()
Definition: Graph.cpp:216
Node * _constant(std::string name, int m, int n, std::vector< std::vector< double >> vals)
Definition: Graph.cpp:194
Node * _div(double a, double b)
Definition: Graph.cpp:129
Node * _exp(Node *a)
Definition: Graph.cpp:150
Node * _add(Node *a, Node *b)
Definition: Graph.cpp:21
Node * _variable(std::string name, int m, int n, std::vector< std::vector< double >> vals)
Definition: Graph.cpp:178
Node * _trans(Node *a)
Definition: Graph.cpp:136
Node * _scalar_constant(std::string name, double data)
Definition: Graph.cpp:209
std::vector< Node * > scalars
Definition: Graph.h:18
Node * _cos(Node *a)
Definition: Graph.cpp:164
Node * _tan(Node *a)
Definition: Graph.cpp:171