Jet<Type> operator-(Jet<Type>& left, Jet<Type>& right)
{
	if(left.length() != right.length() )
		throw; // Krzycz o problemach
	Jet<Type> middle(left.length());
	
	for(int i = 0; i < left.length(); i++)
	{
		middle.set(i, left.get(i) - right.get(i));
	}
	return middle;
}
Jet<Type> operator*(Jet<Type>& left, Jet<Type>& right)
{
	if(left.length() != right.length() )
		throw; // Krzycz o problemach
	Jet<Type> middle(left.length());
	
	for(int i = 0; i < left.length(); i++)
	{
		Type acc = Type();
		for(int j = 0; j  <=  i; j ++)
		{
			acc += left.get(j) * right.get(i - j);
		}
		middle.set(i, acc);
	}
	return middle;
}
Esempio n. 3
0
Type getTaylor(const Jet<Type> &jet, const Type &x0, const Type &x, int n = -1)
{
	Type out = 0;
	Type powerAcc = 1;
	
	if(n == -1) n = jet.length();
	
	for(int i = 0; i < n; i++)
	{
		out += jet.get(i) * powerAcc;
		powerAcc *= (x - x0);
		
	}
	
	return out;
}