%> @param fact_constraints a ConstrainstList or a cell array of matfaust.proj.proj_gen or matfaust.factparams.ConstraintGeneric that define the structure of the pyfaust.fact.hierarchical resulting Faust factors in the same order if is_fact_side_left==true, in the reverse order otherwise.
%> @param 'norm2_max_iter', int cf. ParamsHierarchical.ParamsHierarchical
%> @param 'norm2_threshold', real cf. ParamsHierarchical.ParamsHierarchical
%> @param 'grad_calc_opt_mode', int cf. ParamsHierarchical.ParamsHierarchical
%>
%>
%> @b Example
%> This example shows two parametrizations that are equivalent. The first one, p1, is defined trough a ParamsHierarchical instance while the second one, p2, is defined using a ParamsHierarchicalNoResCons instance.