1# This file was automatically generated by SWIG (http://www.swig.org). 2# Version 4.0.1 3# 4# Do not make changes to this file unless you know what you are doing--modify 5# the SWIG interface file instead. 6 7package Math::GSL::Multiroots; 8use base qw(Exporter); 9use base qw(DynaLoader); 10package Math::GSL::Multirootsc; 11bootstrap Math::GSL::Multiroots; 12package Math::GSL::Multiroots; 13@EXPORT = qw(); 14 15# ---------- BASE METHODS ------------- 16 17package Math::GSL::Multiroots; 18 19sub TIEHASH { 20 my ($classname,$obj) = @_; 21 return bless $obj, $classname; 22} 23 24sub CLEAR { } 25 26sub FIRSTKEY { } 27 28sub NEXTKEY { } 29 30sub FETCH { 31 my ($self,$field) = @_; 32 my $member_func = "swig_${field}_get"; 33 $self->$member_func(); 34} 35 36sub STORE { 37 my ($self,$field,$newval) = @_; 38 my $member_func = "swig_${field}_set"; 39 $self->$member_func($newval); 40} 41 42sub this { 43 my $ptr = shift; 44 return tied(%$ptr); 45} 46 47 48# ------- FUNCTION WRAPPERS -------- 49 50package Math::GSL::Multiroots; 51 52*gsl_error = *Math::GSL::Multirootsc::gsl_error; 53*gsl_stream_printf = *Math::GSL::Multirootsc::gsl_stream_printf; 54*gsl_strerror = *Math::GSL::Multirootsc::gsl_strerror; 55*gsl_set_error_handler = *Math::GSL::Multirootsc::gsl_set_error_handler; 56*gsl_set_error_handler_off = *Math::GSL::Multirootsc::gsl_set_error_handler_off; 57*gsl_set_stream_handler = *Math::GSL::Multirootsc::gsl_set_stream_handler; 58*gsl_set_stream = *Math::GSL::Multirootsc::gsl_set_stream; 59*gsl_multiroot_fdjacobian = *Math::GSL::Multirootsc::gsl_multiroot_fdjacobian; 60*gsl_multiroot_fsolver_alloc = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_alloc; 61*gsl_multiroot_fsolver_free = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_free; 62*gsl_multiroot_fsolver_set = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_set; 63*gsl_multiroot_fsolver_iterate = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_iterate; 64*gsl_multiroot_fsolver_name = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_name; 65*gsl_multiroot_fsolver_root = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_root; 66*gsl_multiroot_fsolver_dx = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_dx; 67*gsl_multiroot_fsolver_f = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_f; 68*gsl_multiroot_fdfsolver_alloc = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_alloc; 69*gsl_multiroot_fdfsolver_set = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_set; 70*gsl_multiroot_fdfsolver_iterate = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_iterate; 71*gsl_multiroot_fdfsolver_free = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_free; 72*gsl_multiroot_fdfsolver_name = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_name; 73*gsl_multiroot_fdfsolver_root = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_root; 74*gsl_multiroot_fdfsolver_dx = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_dx; 75*gsl_multiroot_fdfsolver_f = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_f; 76*gsl_multiroot_test_delta = *Math::GSL::Multirootsc::gsl_multiroot_test_delta; 77*gsl_multiroot_test_residual = *Math::GSL::Multirootsc::gsl_multiroot_test_residual; 78 79############# Class : Math::GSL::Multiroots::gsl_multiroot_function_struct ############## 80 81package Math::GSL::Multiroots::gsl_multiroot_function_struct; 82use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS); 83@ISA = qw( Math::GSL::Multiroots ); 84%OWNER = (); 85%ITERATORS = (); 86*swig_f_get = *Math::GSL::Multirootsc::gsl_multiroot_function_struct_f_get; 87*swig_f_set = *Math::GSL::Multirootsc::gsl_multiroot_function_struct_f_set; 88*swig_n_get = *Math::GSL::Multirootsc::gsl_multiroot_function_struct_n_get; 89*swig_n_set = *Math::GSL::Multirootsc::gsl_multiroot_function_struct_n_set; 90*swig_params_get = *Math::GSL::Multirootsc::gsl_multiroot_function_struct_params_get; 91*swig_params_set = *Math::GSL::Multirootsc::gsl_multiroot_function_struct_params_set; 92sub new { 93 my $pkg = shift; 94 my $self = Math::GSL::Multirootsc::new_gsl_multiroot_function_struct(@_); 95 bless $self, $pkg if defined($self); 96} 97 98sub DESTROY { 99 return unless $_[0]->isa('HASH'); 100 my $self = tied(%{$_[0]}); 101 return unless defined $self; 102 delete $ITERATORS{$self}; 103 if (exists $OWNER{$self}) { 104 Math::GSL::Multirootsc::delete_gsl_multiroot_function_struct($self); 105 delete $OWNER{$self}; 106 } 107} 108 109sub DISOWN { 110 my $self = shift; 111 my $ptr = tied(%$self); 112 delete $OWNER{$ptr}; 113} 114 115sub ACQUIRE { 116 my $self = shift; 117 my $ptr = tied(%$self); 118 $OWNER{$ptr} = 1; 119} 120 121 122############# Class : Math::GSL::Multiroots::gsl_multiroot_fsolver_type ############## 123 124package Math::GSL::Multiroots::gsl_multiroot_fsolver_type; 125use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS); 126@ISA = qw( Math::GSL::Multiroots ); 127%OWNER = (); 128%ITERATORS = (); 129*swig_name_get = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_type_name_get; 130*swig_name_set = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_type_name_set; 131*swig_size_get = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_type_size_get; 132*swig_size_set = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_type_size_set; 133*swig_alloc_get = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_type_alloc_get; 134*swig_alloc_set = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_type_alloc_set; 135*swig_set_get = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_type_set_get; 136*swig_set_set = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_type_set_set; 137*swig_iterate_get = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_type_iterate_get; 138*swig_iterate_set = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_type_iterate_set; 139*swig_free_get = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_type_free_get; 140*swig_free_set = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_type_free_set; 141sub new { 142 my $pkg = shift; 143 my $self = Math::GSL::Multirootsc::new_gsl_multiroot_fsolver_type(@_); 144 bless $self, $pkg if defined($self); 145} 146 147sub DESTROY { 148 return unless $_[0]->isa('HASH'); 149 my $self = tied(%{$_[0]}); 150 return unless defined $self; 151 delete $ITERATORS{$self}; 152 if (exists $OWNER{$self}) { 153 Math::GSL::Multirootsc::delete_gsl_multiroot_fsolver_type($self); 154 delete $OWNER{$self}; 155 } 156} 157 158sub DISOWN { 159 my $self = shift; 160 my $ptr = tied(%$self); 161 delete $OWNER{$ptr}; 162} 163 164sub ACQUIRE { 165 my $self = shift; 166 my $ptr = tied(%$self); 167 $OWNER{$ptr} = 1; 168} 169 170 171############# Class : Math::GSL::Multiroots::gsl_multiroot_fsolver ############## 172 173package Math::GSL::Multiroots::gsl_multiroot_fsolver; 174use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS); 175@ISA = qw( Math::GSL::Multiroots ); 176%OWNER = (); 177%ITERATORS = (); 178*swig_type_get = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_type_get; 179*swig_type_set = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_type_set; 180*swig_function_get = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_function_get; 181*swig_function_set = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_function_set; 182*swig_x_get = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_x_get; 183*swig_x_set = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_x_set; 184*swig_f_get = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_f_get; 185*swig_f_set = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_f_set; 186*swig_dx_get = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_dx_get; 187*swig_dx_set = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_dx_set; 188*swig_state_get = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_state_get; 189*swig_state_set = *Math::GSL::Multirootsc::gsl_multiroot_fsolver_state_set; 190sub new { 191 my $pkg = shift; 192 my $self = Math::GSL::Multirootsc::new_gsl_multiroot_fsolver(@_); 193 bless $self, $pkg if defined($self); 194} 195 196sub DESTROY { 197 return unless $_[0]->isa('HASH'); 198 my $self = tied(%{$_[0]}); 199 return unless defined $self; 200 delete $ITERATORS{$self}; 201 if (exists $OWNER{$self}) { 202 Math::GSL::Multirootsc::delete_gsl_multiroot_fsolver($self); 203 delete $OWNER{$self}; 204 } 205} 206 207sub DISOWN { 208 my $self = shift; 209 my $ptr = tied(%$self); 210 delete $OWNER{$ptr}; 211} 212 213sub ACQUIRE { 214 my $self = shift; 215 my $ptr = tied(%$self); 216 $OWNER{$ptr} = 1; 217} 218 219 220############# Class : Math::GSL::Multiroots::gsl_multiroot_function_fdf_struct ############## 221 222package Math::GSL::Multiroots::gsl_multiroot_function_fdf_struct; 223use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS); 224@ISA = qw( Math::GSL::Multiroots ); 225%OWNER = (); 226%ITERATORS = (); 227*swig_f_get = *Math::GSL::Multirootsc::gsl_multiroot_function_fdf_struct_f_get; 228*swig_f_set = *Math::GSL::Multirootsc::gsl_multiroot_function_fdf_struct_f_set; 229*swig_df_get = *Math::GSL::Multirootsc::gsl_multiroot_function_fdf_struct_df_get; 230*swig_df_set = *Math::GSL::Multirootsc::gsl_multiroot_function_fdf_struct_df_set; 231*swig_fdf_get = *Math::GSL::Multirootsc::gsl_multiroot_function_fdf_struct_fdf_get; 232*swig_fdf_set = *Math::GSL::Multirootsc::gsl_multiroot_function_fdf_struct_fdf_set; 233*swig_n_get = *Math::GSL::Multirootsc::gsl_multiroot_function_fdf_struct_n_get; 234*swig_n_set = *Math::GSL::Multirootsc::gsl_multiroot_function_fdf_struct_n_set; 235*swig_params_get = *Math::GSL::Multirootsc::gsl_multiroot_function_fdf_struct_params_get; 236*swig_params_set = *Math::GSL::Multirootsc::gsl_multiroot_function_fdf_struct_params_set; 237sub new { 238 my $pkg = shift; 239 my $self = Math::GSL::Multirootsc::new_gsl_multiroot_function_fdf_struct(@_); 240 bless $self, $pkg if defined($self); 241} 242 243sub DESTROY { 244 return unless $_[0]->isa('HASH'); 245 my $self = tied(%{$_[0]}); 246 return unless defined $self; 247 delete $ITERATORS{$self}; 248 if (exists $OWNER{$self}) { 249 Math::GSL::Multirootsc::delete_gsl_multiroot_function_fdf_struct($self); 250 delete $OWNER{$self}; 251 } 252} 253 254sub DISOWN { 255 my $self = shift; 256 my $ptr = tied(%$self); 257 delete $OWNER{$ptr}; 258} 259 260sub ACQUIRE { 261 my $self = shift; 262 my $ptr = tied(%$self); 263 $OWNER{$ptr} = 1; 264} 265 266 267############# Class : Math::GSL::Multiroots::gsl_multiroot_fdfsolver_type ############## 268 269package Math::GSL::Multiroots::gsl_multiroot_fdfsolver_type; 270use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS); 271@ISA = qw( Math::GSL::Multiroots ); 272%OWNER = (); 273%ITERATORS = (); 274*swig_name_get = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_type_name_get; 275*swig_name_set = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_type_name_set; 276*swig_size_get = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_type_size_get; 277*swig_size_set = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_type_size_set; 278*swig_alloc_get = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_type_alloc_get; 279*swig_alloc_set = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_type_alloc_set; 280*swig_set_get = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_type_set_get; 281*swig_set_set = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_type_set_set; 282*swig_iterate_get = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_type_iterate_get; 283*swig_iterate_set = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_type_iterate_set; 284*swig_free_get = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_type_free_get; 285*swig_free_set = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_type_free_set; 286sub new { 287 my $pkg = shift; 288 my $self = Math::GSL::Multirootsc::new_gsl_multiroot_fdfsolver_type(@_); 289 bless $self, $pkg if defined($self); 290} 291 292sub DESTROY { 293 return unless $_[0]->isa('HASH'); 294 my $self = tied(%{$_[0]}); 295 return unless defined $self; 296 delete $ITERATORS{$self}; 297 if (exists $OWNER{$self}) { 298 Math::GSL::Multirootsc::delete_gsl_multiroot_fdfsolver_type($self); 299 delete $OWNER{$self}; 300 } 301} 302 303sub DISOWN { 304 my $self = shift; 305 my $ptr = tied(%$self); 306 delete $OWNER{$ptr}; 307} 308 309sub ACQUIRE { 310 my $self = shift; 311 my $ptr = tied(%$self); 312 $OWNER{$ptr} = 1; 313} 314 315 316############# Class : Math::GSL::Multiroots::gsl_multiroot_fdfsolver ############## 317 318package Math::GSL::Multiroots::gsl_multiroot_fdfsolver; 319use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS); 320@ISA = qw( Math::GSL::Multiroots ); 321%OWNER = (); 322%ITERATORS = (); 323*swig_type_get = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_type_get; 324*swig_type_set = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_type_set; 325*swig_fdf_get = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_fdf_get; 326*swig_fdf_set = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_fdf_set; 327*swig_x_get = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_x_get; 328*swig_x_set = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_x_set; 329*swig_f_get = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_f_get; 330*swig_f_set = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_f_set; 331*swig_J_get = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_J_get; 332*swig_J_set = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_J_set; 333*swig_dx_get = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_dx_get; 334*swig_dx_set = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_dx_set; 335*swig_state_get = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_state_get; 336*swig_state_set = *Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_state_set; 337sub new { 338 my $pkg = shift; 339 my $self = Math::GSL::Multirootsc::new_gsl_multiroot_fdfsolver(@_); 340 bless $self, $pkg if defined($self); 341} 342 343sub DESTROY { 344 return unless $_[0]->isa('HASH'); 345 my $self = tied(%{$_[0]}); 346 return unless defined $self; 347 delete $ITERATORS{$self}; 348 if (exists $OWNER{$self}) { 349 Math::GSL::Multirootsc::delete_gsl_multiroot_fdfsolver($self); 350 delete $OWNER{$self}; 351 } 352} 353 354sub DISOWN { 355 my $self = shift; 356 my $ptr = tied(%$self); 357 delete $OWNER{$ptr}; 358} 359 360sub ACQUIRE { 361 my $self = shift; 362 my $ptr = tied(%$self); 363 $OWNER{$ptr} = 1; 364} 365 366 367# ------- VARIABLE STUBS -------- 368 369package Math::GSL::Multiroots; 370 371*GSL_VERSION = *Math::GSL::Multirootsc::GSL_VERSION; 372*GSL_MAJOR_VERSION = *Math::GSL::Multirootsc::GSL_MAJOR_VERSION; 373*GSL_MINOR_VERSION = *Math::GSL::Multirootsc::GSL_MINOR_VERSION; 374*GSL_POSZERO = *Math::GSL::Multirootsc::GSL_POSZERO; 375*GSL_NEGZERO = *Math::GSL::Multirootsc::GSL_NEGZERO; 376*GSL_SUCCESS = *Math::GSL::Multirootsc::GSL_SUCCESS; 377*GSL_FAILURE = *Math::GSL::Multirootsc::GSL_FAILURE; 378*GSL_CONTINUE = *Math::GSL::Multirootsc::GSL_CONTINUE; 379*GSL_EDOM = *Math::GSL::Multirootsc::GSL_EDOM; 380*GSL_ERANGE = *Math::GSL::Multirootsc::GSL_ERANGE; 381*GSL_EFAULT = *Math::GSL::Multirootsc::GSL_EFAULT; 382*GSL_EINVAL = *Math::GSL::Multirootsc::GSL_EINVAL; 383*GSL_EFAILED = *Math::GSL::Multirootsc::GSL_EFAILED; 384*GSL_EFACTOR = *Math::GSL::Multirootsc::GSL_EFACTOR; 385*GSL_ESANITY = *Math::GSL::Multirootsc::GSL_ESANITY; 386*GSL_ENOMEM = *Math::GSL::Multirootsc::GSL_ENOMEM; 387*GSL_EBADFUNC = *Math::GSL::Multirootsc::GSL_EBADFUNC; 388*GSL_ERUNAWAY = *Math::GSL::Multirootsc::GSL_ERUNAWAY; 389*GSL_EMAXITER = *Math::GSL::Multirootsc::GSL_EMAXITER; 390*GSL_EZERODIV = *Math::GSL::Multirootsc::GSL_EZERODIV; 391*GSL_EBADTOL = *Math::GSL::Multirootsc::GSL_EBADTOL; 392*GSL_ETOL = *Math::GSL::Multirootsc::GSL_ETOL; 393*GSL_EUNDRFLW = *Math::GSL::Multirootsc::GSL_EUNDRFLW; 394*GSL_EOVRFLW = *Math::GSL::Multirootsc::GSL_EOVRFLW; 395*GSL_ELOSS = *Math::GSL::Multirootsc::GSL_ELOSS; 396*GSL_EROUND = *Math::GSL::Multirootsc::GSL_EROUND; 397*GSL_EBADLEN = *Math::GSL::Multirootsc::GSL_EBADLEN; 398*GSL_ENOTSQR = *Math::GSL::Multirootsc::GSL_ENOTSQR; 399*GSL_ESING = *Math::GSL::Multirootsc::GSL_ESING; 400*GSL_EDIVERGE = *Math::GSL::Multirootsc::GSL_EDIVERGE; 401*GSL_EUNSUP = *Math::GSL::Multirootsc::GSL_EUNSUP; 402*GSL_EUNIMPL = *Math::GSL::Multirootsc::GSL_EUNIMPL; 403*GSL_ECACHE = *Math::GSL::Multirootsc::GSL_ECACHE; 404*GSL_ETABLE = *Math::GSL::Multirootsc::GSL_ETABLE; 405*GSL_ENOPROG = *Math::GSL::Multirootsc::GSL_ENOPROG; 406*GSL_ENOPROGJ = *Math::GSL::Multirootsc::GSL_ENOPROGJ; 407*GSL_ETOLF = *Math::GSL::Multirootsc::GSL_ETOLF; 408*GSL_ETOLX = *Math::GSL::Multirootsc::GSL_ETOLX; 409*GSL_ETOLG = *Math::GSL::Multirootsc::GSL_ETOLG; 410*GSL_EOF = *Math::GSL::Multirootsc::GSL_EOF; 411 412my %__gsl_multiroot_fsolver_dnewton_hash; 413tie %__gsl_multiroot_fsolver_dnewton_hash,"Math::GSL::Multiroots::gsl_multiroot_fsolver_type", $Math::GSL::Multirootsc::gsl_multiroot_fsolver_dnewton; 414$gsl_multiroot_fsolver_dnewton= \%__gsl_multiroot_fsolver_dnewton_hash; 415bless $gsl_multiroot_fsolver_dnewton, Math::GSL::Multiroots::gsl_multiroot_fsolver_type; 416 417my %__gsl_multiroot_fsolver_broyden_hash; 418tie %__gsl_multiroot_fsolver_broyden_hash,"Math::GSL::Multiroots::gsl_multiroot_fsolver_type", $Math::GSL::Multirootsc::gsl_multiroot_fsolver_broyden; 419$gsl_multiroot_fsolver_broyden= \%__gsl_multiroot_fsolver_broyden_hash; 420bless $gsl_multiroot_fsolver_broyden, Math::GSL::Multiroots::gsl_multiroot_fsolver_type; 421 422my %__gsl_multiroot_fsolver_hybrid_hash; 423tie %__gsl_multiroot_fsolver_hybrid_hash,"Math::GSL::Multiroots::gsl_multiroot_fsolver_type", $Math::GSL::Multirootsc::gsl_multiroot_fsolver_hybrid; 424$gsl_multiroot_fsolver_hybrid= \%__gsl_multiroot_fsolver_hybrid_hash; 425bless $gsl_multiroot_fsolver_hybrid, Math::GSL::Multiroots::gsl_multiroot_fsolver_type; 426 427my %__gsl_multiroot_fsolver_hybrids_hash; 428tie %__gsl_multiroot_fsolver_hybrids_hash,"Math::GSL::Multiroots::gsl_multiroot_fsolver_type", $Math::GSL::Multirootsc::gsl_multiroot_fsolver_hybrids; 429$gsl_multiroot_fsolver_hybrids= \%__gsl_multiroot_fsolver_hybrids_hash; 430bless $gsl_multiroot_fsolver_hybrids, Math::GSL::Multiroots::gsl_multiroot_fsolver_type; 431 432my %__gsl_multiroot_fdfsolver_newton_hash; 433tie %__gsl_multiroot_fdfsolver_newton_hash,"Math::GSL::Multiroots::gsl_multiroot_fdfsolver_type", $Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_newton; 434$gsl_multiroot_fdfsolver_newton= \%__gsl_multiroot_fdfsolver_newton_hash; 435bless $gsl_multiroot_fdfsolver_newton, Math::GSL::Multiroots::gsl_multiroot_fdfsolver_type; 436 437my %__gsl_multiroot_fdfsolver_gnewton_hash; 438tie %__gsl_multiroot_fdfsolver_gnewton_hash,"Math::GSL::Multiroots::gsl_multiroot_fdfsolver_type", $Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_gnewton; 439$gsl_multiroot_fdfsolver_gnewton= \%__gsl_multiroot_fdfsolver_gnewton_hash; 440bless $gsl_multiroot_fdfsolver_gnewton, Math::GSL::Multiroots::gsl_multiroot_fdfsolver_type; 441 442my %__gsl_multiroot_fdfsolver_hybridj_hash; 443tie %__gsl_multiroot_fdfsolver_hybridj_hash,"Math::GSL::Multiroots::gsl_multiroot_fdfsolver_type", $Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_hybridj; 444$gsl_multiroot_fdfsolver_hybridj= \%__gsl_multiroot_fdfsolver_hybridj_hash; 445bless $gsl_multiroot_fdfsolver_hybridj, Math::GSL::Multiroots::gsl_multiroot_fdfsolver_type; 446 447my %__gsl_multiroot_fdfsolver_hybridsj_hash; 448tie %__gsl_multiroot_fdfsolver_hybridsj_hash,"Math::GSL::Multiroots::gsl_multiroot_fdfsolver_type", $Math::GSL::Multirootsc::gsl_multiroot_fdfsolver_hybridsj; 449$gsl_multiroot_fdfsolver_hybridsj= \%__gsl_multiroot_fdfsolver_hybridsj_hash; 450bless $gsl_multiroot_fdfsolver_hybridsj, Math::GSL::Multiroots::gsl_multiroot_fdfsolver_type; 451 452@EXPORT_OK = qw/ 453 gsl_multiroot_fdjacobian 454 gsl_multiroot_fsolver_alloc 455 gsl_multiroot_fsolver_free 456 gsl_multiroot_fsolver_set 457 gsl_multiroot_fsolver_iterate 458 gsl_multiroot_fsolver_name 459 gsl_multiroot_fsolver_root 460 gsl_multiroot_fsolver_dx 461 gsl_multiroot_fsolver_f 462 gsl_multiroot_fdfsolver_alloc 463 gsl_multiroot_fdfsolver_set 464 gsl_multiroot_fdfsolver_iterate 465 gsl_multiroot_fdfsolver_free 466 gsl_multiroot_fdfsolver_name 467 gsl_multiroot_fdfsolver_root 468 gsl_multiroot_fdfsolver_dx 469 gsl_multiroot_fdfsolver_f 470 gsl_multiroot_test_delta 471 gsl_multiroot_test_residual 472 $gsl_multiroot_fsolver_dnewton 473 $gsl_multiroot_fsolver_broyden 474 $gsl_multiroot_fsolver_hybrid 475 $gsl_multiroot_fsolver_hybrids 476 $gsl_multiroot_fdfsolver_newton 477 $gsl_multiroot_fdfsolver_gnewton 478 $gsl_multiroot_fdfsolver_hybridj 479 $gsl_multiroot_fdfsolver_hybridsj 480 /; 481%EXPORT_TAGS = ( all => [ @EXPORT_OK ] ); 482 483__END__ 484 485=encoding utf8 486 487=head1 NAME 488 489Math::GSL::Multiroots - Multidimensional root-finding 490 491 492=head1 SYNOPSIS 493 494This module is not yet implemented. Patches Welcome! 495 496 use Math::GSL::Multiroots qw/:all/; 497 498Solving nonlinear systems with n equations in n unknowns. 499 500=head1 DESCRIPTION 501 502Here is a list of all the functions in this module : 503 504=over 505 506=item * C<gsl_multiroot_fdjacobian > 507 508=item * C<gsl_multiroot_fsolver_alloc > 509 510=item * C<gsl_multiroot_fsolver_free > 511 512=item * C<gsl_multiroot_fsolver_set > 513 514=item * C<gsl_multiroot_fsolver_iterate > 515 516=item * C<gsl_multiroot_fsolver_name > 517 518=item * C<gsl_multiroot_fsolver_root > 519 520=item * C<gsl_multiroot_fsolver_dx > 521 522=item * C<gsl_multiroot_fsolver_f > 523 524=item * C<gsl_multiroot_fdfsolver_alloc > 525 526=item * C<gsl_multiroot_fdfsolver_set > 527 528=item * C<gsl_multiroot_fdfsolver_iterate > 529 530=item * C<gsl_multiroot_fdfsolver_free > 531 532=item * C<gsl_multiroot_fdfsolver_name > 533 534=item * C<gsl_multiroot_fdfsolver_root > 535 536=item * C<gsl_multiroot_fdfsolver_dx > 537 538=item * C<gsl_multiroot_fdfsolver_f > 539 540=item * C<gsl_multiroot_test_delta > 541 542=item * C<gsl_multiroot_test_residual > 543 544=back 545 546For more informations on the functions, we refer you to the GSL official 547documentation: L<http://www.gnu.org/software/gsl/manual/html_node/> 548 549=head1 AUTHORS 550 551Jonathan "Duke" Leto <jonathan@leto.net> and Thierry Moisan <thierry.moisan@gmail.com> 552 553=head1 COPYRIGHT AND LICENSE 554 555Copyright (C) 2008-2021 Jonathan "Duke" Leto and Thierry Moisan 556 557This program is free software; you can redistribute it and/or modify it 558under the same terms as Perl itself. 559 560=cut 561 5621; 563