3#include "lamppp/autograd/forward_function.hpp"
4#include "lamppp/autograd/function.hpp"
6namespace lmp::autograd::ops {
10 variable_list apply(
const variable_list& gradOutputs)
override;
14 variable_list apply(
const variable_list& gradOutputs)
override;
18 variable_list apply(
const variable_list& gradOutputs)
override;
22 variable_list apply(
const variable_list& gradOutputs)
override;
26 variable_list apply(
const variable_list& gradOutputs)
override;
55 variable_list apply(
const variable_list& gradOutputs)
override;
59 variable_list apply(
const variable_list& gradOutputs)
override;
63 variable_list apply(
const variable_list& gradOutputs)
override;
67 variable_list apply(
const variable_list& gradOutputs)
override;
71 variable_list apply(
const variable_list& gradOutputs)
override;
75 variable_list apply(
const variable_list& gradOutputs)
override;
116 return VariableOpFact::apply<Add>({a, b})[0];
126 return VariableOpFact::apply<Subtract>({a, b})[0];
135inline Variable mul(
const Variable& a,
const Variable& b) {
136 return VariableOpFact::apply<Multiply>({a, b})[0];
145inline Variable div(
const Variable& a,
const Variable& b) {
146 return VariableOpFact::apply<Divide>({a, b})[0];
155inline Variable pow(
const Variable& a,
const Variable& b) {
156 return VariableOpFact::apply<Power>({a, b})[0];
165inline Variable eq(
const Variable& a,
const Variable& b) {
166 return VariableOpFact::apply<Equal>({a, b})[0];
175inline Variable ne(
const Variable& a,
const Variable& b) {
176 return VariableOpFact::apply<NotEqual>({a, b})[0];
185inline Variable ge(
const Variable& a,
const Variable& b) {
186 return VariableOpFact::apply<GreaterEqual>({a, b})[0];
195inline Variable le(
const Variable& a,
const Variable& b) {
196 return VariableOpFact::apply<LessEqual>({a, b})[0];
205inline Variable gt(
const Variable& a,
const Variable& b) {
206 return VariableOpFact::apply<Greater>({a, b})[0];
215inline Variable lt(
const Variable& a,
const Variable& b) {
216 return VariableOpFact::apply<Less>({a, b})[0];
Definition variable.hpp:48
Main tensor object for Lamppp.
Definition tensor.hpp:29
Definition forward_function.hpp:11
Definition function.hpp:12
Definition expand_ops.hpp:9
Definition expand_ops.hpp:29
Definition expand_ops.hpp:21
Definition expand_ops.hpp:44
Definition expand_ops.hpp:54
Definition expand_ops.hpp:78
Definition expand_ops.hpp:70
Definition expand_ops.hpp:74
Definition expand_ops.hpp:103
Definition expand_ops.hpp:98
Definition expand_ops.hpp:58
Definition expand_ops.hpp:62
Definition expand_ops.hpp:88
Definition expand_ops.hpp:83
Definition expand_ops.hpp:17
Definition expand_ops.hpp:39
Definition expand_ops.hpp:66
Definition expand_ops.hpp:93
Definition expand_ops.hpp:25
Definition expand_ops.hpp:49
Definition expand_ops.hpp:13
Definition expand_ops.hpp:34