fix tabulation and gaps in expression.rb
This commit is contained in:
@@ -69,6 +69,7 @@ module RubyAlgebra
|
||||
def type
|
||||
:sub
|
||||
end
|
||||
|
||||
def diff(v)
|
||||
Subtraction.new(@lhs.diff(v), @rhs.diff(v))
|
||||
end
|
||||
@@ -114,13 +115,14 @@ module RubyAlgebra
|
||||
def op_assoc_type
|
||||
:left
|
||||
end
|
||||
|
||||
def diff(v)
|
||||
u_prime = @lhs.diff(v)
|
||||
v_prime = @rhs.diff(v)
|
||||
term1 = Multiplication.new(u_prime, @rhs)
|
||||
term2 = Multiplication.new(@lhs, v_prime)
|
||||
Addition.new(term1, term2)
|
||||
end
|
||||
u_prime = @lhs.diff(v)
|
||||
v_prime = @rhs.diff(v)
|
||||
term1 = Multiplication.new(u_prime, @rhs)
|
||||
term2 = Multiplication.new(@lhs, v_prime)
|
||||
Addition.new(term1, term2)
|
||||
end
|
||||
end
|
||||
|
||||
class Division < Multiplication
|
||||
@@ -176,6 +178,7 @@ module RubyAlgebra
|
||||
def op_assoc_type
|
||||
:right
|
||||
end
|
||||
|
||||
def diff(v)
|
||||
unless @exponent.is_a?(Constant)
|
||||
raise NotImplementedError, "Дифференцирование степени с неконстантным показателем не реализовано"
|
||||
@@ -244,6 +247,7 @@ module RubyAlgebra
|
||||
def single_letter?
|
||||
@is_single_letter
|
||||
end
|
||||
|
||||
def diff(v)
|
||||
@symbol == v ? Constant.new(1) : Constant.new(0)
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user