示例#1
0
文件: inifcns.cpp 项目: feelpp/feelpp
static ex real_part_evalf(const ex & arg)
{
	if (is_exactly_a<numeric>(arg)) {
		return ex_to<numeric>(arg).real();
	}
	return real_part_function(arg).hold();
}
示例#2
0
文件: inifcns.cpp 项目: feelpp/feelpp
// If x is real then Re(e).diff(x) is equal to Re(e.diff(x)) 
static ex real_part_expl_derivative(const ex & arg, const symbol & s)
{
	if (s.info(info_flags::real))
		return real_part_function(arg.diff(s));
	else {
		exvector vec_arg;
		vec_arg.push_back(arg);
		return fderivative(ex_to<function>(real_part(arg)).get_serial(),0,vec_arg).hold()*arg.diff(s);
	}
}
示例#3
0
文件: inifcns.cpp 项目: feelpp/feelpp
static ex real_part_real_part(const ex & arg)
{
	return real_part_function(arg).hold();
}
示例#4
0
ex basic::real_part() const
{
    return real_part_function(*this).hold();
}