mirror of
https://github.com/ceres-solver/ceres-solver.git
synced 2026-08-30 00:50:37 +08:00
Sized cost function using variadic templates
This PR changes the interface of sized_cost_fucntion, autodiff_cost_function and numeric_diff_costfunction from using ten hardcoded parameter blocks to a variable number of parameter blocks using variadic templates. Trailing parameter blocks of size zero are now considered as error. Change-Id: I37b9a0a420ef0eda6476a46672bbf6bd57e19760
This commit is contained in:
@@ -265,14 +265,12 @@ void QuaternionParameterizationTestHelper(
|
||||
double* jacobian_array[2] = { NULL, jacobian_ref };
|
||||
|
||||
// Autodiff jacobian at delta_x = 0.
|
||||
internal::AutoDiff<Plus,
|
||||
double,
|
||||
kGlobalSize,
|
||||
kLocalSize>::Differentiate(Plus(),
|
||||
parameters,
|
||||
kGlobalSize,
|
||||
x_plus_delta,
|
||||
jacobian_array);
|
||||
internal::AutoDifferentiate<StaticParameterDims<kGlobalSize, kLocalSize>>(
|
||||
Plus(),
|
||||
parameters,
|
||||
kGlobalSize,
|
||||
x_plus_delta,
|
||||
jacobian_array);
|
||||
|
||||
double jacobian[12];
|
||||
parameterization.ComputeJacobian(x, jacobian);
|
||||
|
||||
Reference in New Issue
Block a user