1// This file is MACHINE GENERATED! Do not edit.
2
3
4#include "tensorflow/cc/ops/const_op.h"
5#include "tensorflow/cc/ops/linalg_ops_internal.h"
6
7namespace tensorflow {
8namespace ops {
9namespace internal {
10// NOTE: This namespace has internal TensorFlow details that
11// are not part of TensorFlow's public API.
12
13BandedTriangularSolve::BandedTriangularSolve(const ::tensorflow::Scope& scope,
14 ::tensorflow::Input matrix,
15 ::tensorflow::Input rhs, const
16 BandedTriangularSolve::Attrs&
17 attrs) {
18 if (!scope.ok()) return;
19 auto _matrix = ::tensorflow::ops::AsNodeOut(scope, matrix);
20 if (!scope.ok()) return;
21 auto _rhs = ::tensorflow::ops::AsNodeOut(scope, rhs);
22 if (!scope.ok()) return;
23 ::tensorflow::Node* ret;
24 const auto unique_name = scope.GetUniqueNameForOp("BandedTriangularSolve");
25 auto builder = ::tensorflow::NodeBuilder(unique_name, "BandedTriangularSolve")
26 .Input(_matrix)
27 .Input(_rhs)
28 .Attr("lower", attrs.lower_)
29 .Attr("adjoint", attrs.adjoint_)
30 ;
31 scope.UpdateBuilder(&builder);
32 scope.UpdateStatus(builder.Finalize(scope.graph(), &ret));
33 if (!scope.ok()) return;
34 scope.UpdateStatus(scope.DoShapeInference(ret));
35 this->operation = Operation(ret);
36 this->output = Output(ret, 0);
37}
38
39BandedTriangularSolve::BandedTriangularSolve(const ::tensorflow::Scope& scope,
40 ::tensorflow::Input matrix,
41 ::tensorflow::Input rhs)
42 : BandedTriangularSolve(scope, matrix, rhs, BandedTriangularSolve::Attrs()) {}
43
44MatrixLogarithm::MatrixLogarithm(const ::tensorflow::Scope& scope,
45 ::tensorflow::Input input) {
46 if (!scope.ok()) return;
47 auto _input = ::tensorflow::ops::AsNodeOut(scope, input);
48 if (!scope.ok()) return;
49 ::tensorflow::Node* ret;
50 const auto unique_name = scope.GetUniqueNameForOp("MatrixLogarithm");
51 auto builder = ::tensorflow::NodeBuilder(unique_name, "MatrixLogarithm")
52 .Input(_input)
53 ;
54 scope.UpdateBuilder(&builder);
55 scope.UpdateStatus(builder.Finalize(scope.graph(), &ret));
56 if (!scope.ok()) return;
57 scope.UpdateStatus(scope.DoShapeInference(ret));
58 this->operation = Operation(ret);
59 this->output = Output(ret, 0);
60}
61
62TridiagonalMatMul::TridiagonalMatMul(const ::tensorflow::Scope& scope,
63 ::tensorflow::Input superdiag,
64 ::tensorflow::Input maindiag,
65 ::tensorflow::Input subdiag,
66 ::tensorflow::Input rhs) {
67 if (!scope.ok()) return;
68 auto _superdiag = ::tensorflow::ops::AsNodeOut(scope, superdiag);
69 if (!scope.ok()) return;
70 auto _maindiag = ::tensorflow::ops::AsNodeOut(scope, maindiag);
71 if (!scope.ok()) return;
72 auto _subdiag = ::tensorflow::ops::AsNodeOut(scope, subdiag);
73 if (!scope.ok()) return;
74 auto _rhs = ::tensorflow::ops::AsNodeOut(scope, rhs);
75 if (!scope.ok()) return;
76 ::tensorflow::Node* ret;
77 const auto unique_name = scope.GetUniqueNameForOp("TridiagonalMatMul");
78 auto builder = ::tensorflow::NodeBuilder(unique_name, "TridiagonalMatMul")
79 .Input(_superdiag)
80 .Input(_maindiag)
81 .Input(_subdiag)
82 .Input(_rhs)
83 ;
84 scope.UpdateBuilder(&builder);
85 scope.UpdateStatus(builder.Finalize(scope.graph(), &ret));
86 if (!scope.ok()) return;
87 scope.UpdateStatus(scope.DoShapeInference(ret));
88 this->operation = Operation(ret);
89 this->output = Output(ret, 0);
90}
91
92TridiagonalSolve::TridiagonalSolve(const ::tensorflow::Scope& scope,
93 ::tensorflow::Input diagonals,
94 ::tensorflow::Input rhs, const
95 TridiagonalSolve::Attrs& attrs) {
96 if (!scope.ok()) return;
97 auto _diagonals = ::tensorflow::ops::AsNodeOut(scope, diagonals);
98 if (!scope.ok()) return;
99 auto _rhs = ::tensorflow::ops::AsNodeOut(scope, rhs);
100 if (!scope.ok()) return;
101 ::tensorflow::Node* ret;
102 const auto unique_name = scope.GetUniqueNameForOp("TridiagonalSolve");
103 auto builder = ::tensorflow::NodeBuilder(unique_name, "TridiagonalSolve")
104 .Input(_diagonals)
105 .Input(_rhs)
106 .Attr("partial_pivoting", attrs.partial_pivoting_)
107 .Attr("perturb_singular", attrs.perturb_singular_)
108 ;
109 scope.UpdateBuilder(&builder);
110 scope.UpdateStatus(builder.Finalize(scope.graph(), &ret));
111 if (!scope.ok()) return;
112 scope.UpdateStatus(scope.DoShapeInference(ret));
113 this->operation = Operation(ret);
114 this->output = Output(ret, 0);
115}
116
117TridiagonalSolve::TridiagonalSolve(const ::tensorflow::Scope& scope,
118 ::tensorflow::Input diagonals,
119 ::tensorflow::Input rhs)
120 : TridiagonalSolve(scope, diagonals, rhs, TridiagonalSolve::Attrs()) {}
121
122} // namespace internal
123} // namespace ops
124} // namespace tensorflow
125