@@ -1782,15 +1782,18 @@ def solve_problem_from_model(
17821782
17831783 @staticmethod
17841784 def _set_option (kc : Any , name : str , value : Any ) -> None :
1785+
1786+ param_id = knitro .KN_get_param_id (kc , name )
1787+
17851788 if isinstance (value , bool ):
17861789 value = int (value )
17871790
17881791 if isinstance (value , int ):
1789- knitro .KN_set_int_param (kc , name , value )
1792+ knitro .KN_set_int_param (kc , param_id , value )
17901793 elif isinstance (value , float ):
1791- knitro .KN_set_double_param (kc , name , value )
1794+ knitro .KN_set_double_param (kc , param_id , value )
17921795 elif isinstance (value , str ):
1793- knitro .KN_set_char_param (kc , name , value )
1796+ knitro .KN_set_char_param (kc , param_id , value )
17941797 else :
17951798 msg = f"Unsupported Knitro option type for { name !r} : { type (value ).__name__ } "
17961799 raise TypeError (msg )
@@ -1877,9 +1880,7 @@ def solve_problem_from_file(
18771880 )
18781881
18791882 if log_fn is not None :
1880- log_fn .parent .mkdir (parents = True , exist_ok = True )
1881- knitro .KN_set_char_param (kc , "outdir" , str (log_fn .parent ))
1882- knitro .KN_set_char_param (kc , "outname" , log_fn .stem )
1883+ logger .warning ("Log file output not implemented for Knitro" )
18831884
18841885 for k , v in self .solver_options .items ():
18851886 self ._set_option (kc , k , v )
0 commit comments