
    'j|P                     	   d Z ddlmZ  e e                                d          dd          sesdev rddl	m
Z
 nddl
Z
	 ddlZn# e$ r ddlZY nw xY wd	 Zd
 Zd Zd Z G d de          Z G d de          Z e
j        e            G d de          Z e
j        e            G d de          Z e
j        e            G d de          Z e
j        e            G d de          Z e
j        e            G d de          Z e
j         e            G d de          Z! e
j"        e!            G d de          Z# e
j$        e#            G d d e          Z% e
j&        e%            G d! d"e%          Z' e
j(        e'            G d# d$e%          Z) e
j*        e)            G d% d&e%          Z+ e
j,        e+            G d' d(e-          Z. e
j/        e.            G d) d*e-          Z0 e
j1        e0           	 e
j2        Z2e
j3        Z3n# e4$ r e5Z2e5Z3Y nw xY w e6 e
j7                              dz    e6 e
j8                              z   dz    e6 e
j9                              z   Z:e
j;        Z;e
j<        Z<e
j=        Z=e
j>        Z>e
j?        Z?e
j@        Z@e
jA        ZAe
jB        ZBe
jC        ZCe
jD        ZDe
jE        ZEe
jF        ZFe
jG        ZGe
jH        ZHe
jI        ZIe
jJ        ZJe
jK        ZKe
jL        ZLe
jM        ZMe
jN        ZNe
jO        ZOe
jP        ZPe
jQ        ZQe
jR        ZRe
jS        ZSe
jT        ZTe
jU        ZUe
jV        ZVe
jW        ZWe
jX        ZXe
jY        ZYe
jZ        ZZe
j[        Z[e
j\        Z\e
j]        Z]e
j^        Z^e
j_        Z_e
j`        Z`e
ja        Zae
jb        Zbe
jc        Zce
jd        Zde
je        Zee
jf        Zfe
jg        Zge
jh        Zhe
ji        Zie
jj        Zje
jk        Zke
jl        Zle
jm        Zme
jn        Zne
jo        Zoe
jp        Zpe
jq        Zqe
jr        Zre
js        Zse
jt        Zt G d+ d,e%          Zu e
jv        eu            G d- d.e%          Zw e
jx        ew            G d/ d0e-          Zy e
jz        ey           d1 Z{d2 Z|d3 Z}d4 Z7d5 Z8d6 Z9d7 Z~dS )8a  
NLopt is a multi-language library for nonlinear optimization (local or
global, with or without derivatives, and supporting nonlinear
constraints).  Complete documentation, including a Python tutorial,
can be found at the NLopt web page: http://ab-initio.mit.edu/nlopt
    )version_info__spec__parentN.   )_nloptc                     	 d| j                                         z   }n# t          j        $ r d}Y nw xY wd| j        j        d| j        j        d|dS )Nz	proxy of  <r   z; z >)this__repr____builtin__	Exception	__class__
__module____name__)selfstrthiss     E/DATA/AppData/hermes/venv/lib/python3.11/site-packages/nlopt/nlopt.py
_swig_reprr      ss    	 2 2 4 44    !^6668O8O8OQXQXQXZZs    33c                       fd}|S )Nc                 4   |dk    r | ||           d S |dk    r| j                             |           d S t          | |          r?t          t	          t          |           |          t                    r | ||           d S t          d| z            )Nr   thisownz(You cannot add instance attributes to %s)r   ownhasattr
isinstancegetattrtypepropertyAttributeError)r   namevaluesets      r   set_instance_attrzE_swig_setattr_nondynamic_instance_variable.<locals>.set_instance_attr#   s    6>>CdE"""""YIMM%     T4   	TZT

D0I0I8%T%T 	TCdE""""" !Kd!RSSS     )r#   r$   s   ` r   *_swig_setattr_nondynamic_instance_variabler'   "   s)    T T T T T r%   c                       fd}|S )Nc                     t          | |          r2t          t          | |          t                    s | ||           d S t	          d| z            )Nz%You cannot add class attributes to %s)r   r   r   r   r    )clsr!   r"   r#   s      r   set_class_attrz?_swig_setattr_nondynamic_class_variable.<locals>.set_class_attr0   s`    3 	Pjd1C1CX&N&N 	PCT5!!!!! !H3!NOOOr%   r&   )r#   r+   s   ` r   '_swig_setattr_nondynamic_class_variabler,   /   s)    P P P P P
 r%   c                       fd}|S )zlClass decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclassc                 `     | j         | j        | j                                                  S N)r   	__bases____dict__copy)r*   	metaclasss    r   wrapperz$_swig_add_metaclass.<locals>.wrapper:   s)    ys}cl6G6G6I6IJJJr%   r&   )r3   r4   s   ` r   _swig_add_metaclassr5   8   s&    K K K K KNr%   c                   2    e Zd ZdZ eej                  ZdS )_SwigNonDynamicMetazKMeta class to enforce nondynamic attributes (no new attributes) for a classN)r   r   __qualname____doc__r,   r   __setattr__r&   r%   r   r7   r7   ?   s'        UU99$:JKKKKKr%   r7   c                   L    e Zd Z ed d d          ZeZej        Z	d Z
d ZdS )	exceptionc                 4    | j                                         S r/   r   r   xs    r   <lambda>zexception.<lambda>E        r%   c                 6    | j                             |          S r/   r>   r@   vs     r   rA   zexception.<lambda>E       AFJJqMM r%   The membership flagdocc                 *    t          j        |           S r/   )r   exception_whatr   s    r   whatzexception.whatI       $T***r%   c                 R    t          j        | t          j                               d S r/   )r   exception_swiginitnew_exceptionrL   s    r   __init__zexception.__init__L   s$    !$(<(>(>?????r%   N)r   r   r8   r   r   r   r   r   delete_exception__swig_destroy__rM   rR   r&   r%   r   r<   r<   D   sd        h--/I/IOdeeeGH.+ + +@ @ @ @ @r%   r<   c                   F    e Zd Z ed d d          ZeZd Zej	        Z
dS )bad_castc                 4    | j                                         S r/   r>   r?   s    r   rA   zbad_cast.<lambda>R   rB   r%   c                 6    | j                             |          S r/   r>   rD   s     r   rA   zbad_cast.<lambda>R   rF   r%   rG   rH   c                 R    t          j        | t          j                               d S r/   )r   bad_cast_swiginitnew_bad_castrL   s    r   rR   zbad_cast.__init__U   s$     v':'<'<=====r%   N)r   r   r8   r   r   r   r   rR   r   delete_bad_castrT   r&   r%   r   rV   rV   Q   sL        h--/I/IOdeeeGH> > >-r%   rV   c                   F    e Zd Z ed d d          ZeZd Zej	        Z
dS )bad_exceptionc                 4    | j                                         S r/   r>   r?   s    r   rA   zbad_exception.<lambda>\   rB   r%   c                 6    | j                             |          S r/   r>   rD   s     r   rA   zbad_exception.<lambda>\   rF   r%   rG   rH   c                 R    t          j        | t          j                               d S r/   )r   bad_exception_swiginitnew_bad_exceptionrL   s    r   rR   zbad_exception.__init___   s$    %dF,D,F,FGGGGGr%   N)r   r   r8   r   r   r   r   rR   r   delete_bad_exceptionrT   r&   r%   r   r^   r^   [   sO        h--/I/IOdeeeGHH H H2r%   r^   c                   F    e Zd Z ed d d          ZeZd Zej	        Z
dS )logic_errorc                 4    | j                                         S r/   r>   r?   s    r   rA   zlogic_error.<lambda>f   rB   r%   c                 6    | j                             |          S r/   r>   rD   s     r   rA   zlogic_error.<lambda>f   rF   r%   rG   rH   c                 T    t          j        | t          j        |                     d S r/   )r   logic_error_swiginitnew_logic_errorr   msgs     r   rR   zlogic_error.__init__i   &    #D&*@*E*EFFFFFr%   N)r   r   r8   r   r   r   r   rR   r   delete_logic_errorrT   r&   r%   r   rf   rf   e   O        h--/I/IOdeeeGHG G G0r%   rf   c                   F    e Zd Z ed d d          ZeZd Zej	        Z
dS )domain_errorc                 4    | j                                         S r/   r>   r?   s    r   rA   zdomain_error.<lambda>p   rB   r%   c                 6    | j                             |          S r/   r>   rD   s     r   rA   zdomain_error.<lambda>p   rF   r%   rG   rH   c                 T    t          j        | t          j        |                     d S r/   )r   domain_error_swiginitnew_domain_errorrl   s     r   rR   zdomain_error.__init__s   &    $T6+B3+G+GHHHHHr%   N)r   r   r8   r   r   r   r   rR   r   delete_domain_errorrT   r&   r%   r   rr   rr   o   O        h--/I/IOdeeeGHI I I1r%   rr   c                   F    e Zd Z ed d d          ZeZd Zej	        Z
dS )invalid_argumentc                 4    | j                                         S r/   r>   r?   s    r   rA   zinvalid_argument.<lambda>z   rB   r%   c                 6    | j                             |          S r/   r>   rD   s     r   rA   zinvalid_argument.<lambda>z   rF   r%   rG   rH   c                 T    t          j        | t          j        |                     d S r/   )r   invalid_argument_swiginitnew_invalid_argumentrl   s     r   rR   zinvalid_argument.__init__}   s&    (v/J3/O/OPPPPPr%   N)r   r   r8   r   r   r   r   rR   r   delete_invalid_argumentrT   r&   r%   r   r|   r|   y   sO        h--/I/IOdeeeGHQ Q Q5r%   r|   c                   F    e Zd Z ed d d          ZeZd Zej	        Z
dS )length_errorc                 4    | j                                         S r/   r>   r?   s    r   rA   zlength_error.<lambda>   rB   r%   c                 6    | j                             |          S r/   r>   rD   s     r   rA   zlength_error.<lambda>   rF   r%   rG   rH   c                 T    t          j        | t          j        |                     d S r/   )r   length_error_swiginitnew_length_errorrl   s     r   rR   zlength_error.__init__   rx   r%   N)r   r   r8   r   r   r   r   rR   r   delete_length_errorrT   r&   r%   r   r   r      rz   r%   r   c                   F    e Zd Z ed d d          ZeZd Zej	        Z
dS )out_of_rangec                 4    | j                                         S r/   r>   r?   s    r   rA   zout_of_range.<lambda>   rB   r%   c                 6    | j                             |          S r/   r>   rD   s     r   rA   zout_of_range.<lambda>   rF   r%   rG   rH   c                 T    t          j        | t          j        |                     d S r/   )r   out_of_range_swiginitnew_out_of_rangerl   s     r   rR   zout_of_range.__init__   rx   r%   N)r   r   r8   r   r   r   r   rR   r   delete_out_of_rangerT   r&   r%   r   r   r      rz   r%   r   c                   F    e Zd Z ed d d          ZeZd Zej	        Z
dS )runtime_errorc                 4    | j                                         S r/   r>   r?   s    r   rA   zruntime_error.<lambda>   rB   r%   c                 6    | j                             |          S r/   r>   rD   s     r   rA   zruntime_error.<lambda>   rF   r%   rG   rH   c                 T    t          j        | t          j        |                     d S r/   )r   runtime_error_swiginitnew_runtime_errorrl   s     r   rR   zruntime_error.__init__   s&    %dF,DS,I,IJJJJJr%   N)r   r   r8   r   r   r   r   rR   r   delete_runtime_errorrT   r&   r%   r   r   r      sO        h--/I/IOdeeeGHK K K2r%   r   c                   F    e Zd Z ed d d          ZeZd Zej	        Z
dS )range_errorc                 4    | j                                         S r/   r>   r?   s    r   rA   zrange_error.<lambda>   rB   r%   c                 6    | j                             |          S r/   r>   rD   s     r   rA   zrange_error.<lambda>   rF   r%   rG   rH   c                 T    t          j        | t          j        |                     d S r/   )r   range_error_swiginitnew_range_errorrl   s     r   rR   zrange_error.__init__   rn   r%   N)r   r   r8   r   r   r   r   rR   r   delete_range_errorrT   r&   r%   r   r   r      rp   r%   r   c                   F    e Zd Z ed d d          ZeZd Zej	        Z
dS )overflow_errorc                 4    | j                                         S r/   r>   r?   s    r   rA   zoverflow_error.<lambda>   rB   r%   c                 6    | j                             |          S r/   r>   rD   s     r   rA   zoverflow_error.<lambda>   rF   r%   rG   rH   c                 T    t          j        | t          j        |                     d S r/   )r   overflow_error_swiginitnew_overflow_errorrl   s     r   rR   zoverflow_error.__init__   s&    &tV-Fs-K-KLLLLLr%   N)r   r   r8   r   r   r   r   rR   r   delete_overflow_errorrT   r&   r%   r   r   r      sO        h--/I/IOdeeeGHM M M3r%   r   c                   F    e Zd Z ed d d          ZeZd Zej	        Z
dS )underflow_errorc                 4    | j                                         S r/   r>   r?   s    r   rA   zunderflow_error.<lambda>   rB   r%   c                 6    | j                             |          S r/   r>   rD   s     r   rA   zunderflow_error.<lambda>   rF   r%   rG   rH   c                 T    t          j        | t          j        |                     d S r/   )r   underflow_error_swiginitnew_underflow_errorrl   s     r   rR   zunderflow_error.__init__   s&    'f.H.M.MNNNNNr%   N)r   r   r8   r   r   r   r   rR   r   delete_underflow_errorrT   r&   r%   r   r   r      sO        h--/I/IOdeeeGHO O O4r%   r   c                       e Zd Z ed d d          Zd ZeZej	        Z
d ZddZdd	Zd
 Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd ZdS )SwigPyIteratorc                 4    | j                                         S r/   r>   r?   s    r   rA   zSwigPyIterator.<lambda>   rB   r%   c                 6    | j                             |          S r/   r>   rD   s     r   rA   zSwigPyIterator.<lambda>   rF   r%   rG   rH   c                      t          d          )Nz*No constructor defined - class is abstract)r    )r   argskwargss      r   rR   zSwigPyIterator.__init__   s    IJJJr%   c                 *    t          j        |           S r/   )r   SwigPyIterator_valuerL   s    r   r"   zSwigPyIterator.value   s    *4000r%   r   c                 ,    t          j        | |          S r/   )r   SwigPyIterator_incrr   ns     r   incrzSwigPyIterator.incr       )$222r%   c                 ,    t          j        | |          S r/   )r   SwigPyIterator_decrr   s     r   decrzSwigPyIterator.decr   r   r%   c                 ,    t          j        | |          S r/   )r   SwigPyIterator_distancer   r@   s     r   distancezSwigPyIterator.distance       -dA666r%   c                 ,    t          j        | |          S r/   )r   SwigPyIterator_equalr   s     r   equalzSwigPyIterator.equal       *4333r%   c                 *    t          j        |           S r/   )r   SwigPyIterator_copyrL   s    r   r2   zSwigPyIterator.copy       )$///r%   c                 *    t          j        |           S r/   )r   SwigPyIterator_nextrL   s    r   nextzSwigPyIterator.next   r   r%   c                 *    t          j        |           S r/   )r   SwigPyIterator___next__rL   s    r   __next__zSwigPyIterator.__next__       -d333r%   c                 *    t          j        |           S r/   )r   SwigPyIterator_previousrL   s    r   previouszSwigPyIterator.previous   r   r%   c                 ,    t          j        | |          S r/   )r   SwigPyIterator_advancer   s     r   advancezSwigPyIterator.advance       ,T1555r%   c                 ,    t          j        | |          S r/   )r   SwigPyIterator___eq__r   s     r   __eq__zSwigPyIterator.__eq__       +D!444r%   c                 ,    t          j        | |          S r/   )r   SwigPyIterator___ne__r   s     r   __ne__zSwigPyIterator.__ne__   r   r%   c                 ,    t          j        | |          S r/   )r   SwigPyIterator___iadd__r   s     r   __iadd__zSwigPyIterator.__iadd__   r   r%   c                 ,    t          j        | |          S r/   )r   SwigPyIterator___isub__r   s     r   __isub__zSwigPyIterator.__isub__   r   r%   c                 ,    t          j        | |          S r/   )r   SwigPyIterator___add__r   s     r   __add__zSwigPyIterator.__add__   r   r%   c                 &    t          j        | g|R  S r/   )r   SwigPyIterator___sub__r   r   s     r   __sub__zSwigPyIterator.__sub__   s    ,T9D9999r%   c                     | S r/   r&   rL   s    r   __iter__zSwigPyIterator.__iter__   s    r%   N)r   )r   r   r8   r   r   rR   r   r   r   delete_SwigPyIteratorrT   r"   r   r   r   r   r2   r   r   r   r   r   r   r   r   r   r   r   r&   r%   r   r   r      s\       h--/I/IOdeeeGK K KH31 1 13 3 3 33 3 3 37 7 74 4 40 0 00 0 04 4 44 4 46 6 65 5 55 5 57 7 77 7 76 6 6: : :    r%   r   c                      e Zd Z ed d d          ZeZd Zd Zd Z	d Z
d	 Zd
 Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Z d Z!d  Z"d! Z#d" Z$d# Z%d$ Z&d% Z'e(j)        Z*d&S )'nlopt_doublevectorc                 4    | j                                         S r/   r>   r?   s    r   rA   znlopt_doublevector.<lambda>   rB   r%   c                 6    | j                             |          S r/   r>   rD   s     r   rA   znlopt_doublevector.<lambda>   rF   r%   rG   rH   c                 *    t          j        |           S r/   )r   nlopt_doublevector_iteratorrL   s    r   iteratorznlopt_doublevector.iterator       1$777r%   c                 *    |                                  S r/   )r   rL   s    r   r   znlopt_doublevector.__iter__  s    }}r%   c                 *    t          j        |           S r/   )r   nlopt_doublevector___nonzero__rL   s    r   __nonzero__znlopt_doublevector.__nonzero__  s    4T:::r%   c                 *    t          j        |           S r/   )r   nlopt_doublevector___bool__rL   s    r   __bool__znlopt_doublevector.__bool__  r   r%   c                 *    t          j        |           S r/   )r   nlopt_doublevector___len__rL   s    r   __len__znlopt_doublevector.__len__
      0666r%   c                 .    t          j        | ||          S r/   )r   nlopt_doublevector___getslice__r   ijs      r   __getslice__znlopt_doublevector.__getslice__      5dAqAAAr%   c                 &    t          j        | g|R  S r/   )r   nlopt_doublevector___setslice__r   s     r   __setslice__znlopt_doublevector.__setslice__  s    5dBTBBBBr%   c                 .    t          j        | ||          S r/   )r   nlopt_doublevector___delslice__r  s      r   __delslice__znlopt_doublevector.__delslice__  r  r%   c                 &    t          j        | g|R  S r/   )r   nlopt_doublevector___delitem__r   s     r   __delitem__znlopt_doublevector.__delitem__      4TADAAAAr%   c                 &    t          j        | g|R  S r/   )r   nlopt_doublevector___getitem__r   s     r   __getitem__znlopt_doublevector.__getitem__  r  r%   c                 &    t          j        | g|R  S r/   )r   nlopt_doublevector___setitem__r   s     r   __setitem__znlopt_doublevector.__setitem__  r  r%   c                 *    t          j        |           S r/   )r   nlopt_doublevector_poprL   s    r   popznlopt_doublevector.pop      ,T222r%   c                 ,    t          j        | |          S r/   )r   nlopt_doublevector_appendr   s     r   appendznlopt_doublevector.append"  s    /a888r%   c                 *    t          j        |           S r/   )r   nlopt_doublevector_emptyrL   s    r   emptyznlopt_doublevector.empty%      .t444r%   c                 *    t          j        |           S r/   )r   nlopt_doublevector_sizerL   s    r   sizeznlopt_doublevector.size(  r   r%   c                 ,    t          j        | |          S r/   )r   nlopt_doublevector_swap)r   rE   s     r   swapznlopt_doublevector.swap+  r   r%   c                 *    t          j        |           S r/   )r   nlopt_doublevector_beginrL   s    r   beginznlopt_doublevector.begin.  r*  r%   c                 *    t          j        |           S r/   )r   nlopt_doublevector_endrL   s    r   endznlopt_doublevector.end1  r#  r%   c                 *    t          j        |           S r/   )r   nlopt_doublevector_rbeginrL   s    r   rbeginznlopt_doublevector.rbegin4  s    /555r%   c                 *    t          j        |           S r/   )r   nlopt_doublevector_rendrL   s    r   rendznlopt_doublevector.rend7  r   r%   c                 *    t          j        |           S r/   )r   nlopt_doublevector_clearrL   s    r   clearznlopt_doublevector.clear:  r*  r%   c                 *    t          j        |           S r/   )r    nlopt_doublevector_get_allocatorrL   s    r   get_allocatorz nlopt_doublevector.get_allocator=  s    6t<<<r%   c                 *    t          j        |           S r/   )r   nlopt_doublevector_pop_backrL   s    r   pop_backznlopt_doublevector.pop_back@  r   r%   c                 &    t          j        | g|R  S r/   )r   nlopt_doublevector_eraser   s     r   eraseznlopt_doublevector.eraseC  s    .t;d;;;;r%   c                 H    t          j        | t          j        |            d S r/   )r   nlopt_doublevector_swiginitnew_nlopt_doublevectorr   s     r   rR   znlopt_doublevector.__init__F  s$    *41NPT1UVVVVVr%   c                 ,    t          j        | |          S r/   )r   nlopt_doublevector_push_backr   s     r   	push_backznlopt_doublevector.push_backI      24;;;r%   c                 *    t          j        |           S r/   )r   nlopt_doublevector_frontrL   s    r   frontznlopt_doublevector.frontL  r*  r%   c                 *    t          j        |           S r/   )r   nlopt_doublevector_backrL   s    r   backznlopt_doublevector.backO  r   r%   c                 .    t          j        | ||          S r/   )r   nlopt_doublevector_assign)r   r   r@   s      r   assignznlopt_doublevector.assignR  s    /a;;;r%   c                 &    t          j        | g|R  S r/   )r   nlopt_doublevector_resizer   s     r   resizeznlopt_doublevector.resizeU      /<t<<<<r%   c                 &    t          j        | g|R  S r/   )r   nlopt_doublevector_insertr   s     r   insertznlopt_doublevector.insertX  r\  r%   c                 ,    t          j        | |          S r/   )r   nlopt_doublevector_reserver   s     r   reserveznlopt_doublevector.reserve[  s    0q999r%   c                 *    t          j        |           S r/   )r   nlopt_doublevector_capacityrL   s    r   capacityznlopt_doublevector.capacity^  r   r%   N)+r   r   r8   r   r   r   r   r   r   r  r  r  r  r  r  r  r  r  r"  r&  r)  r-  r0  r3  r6  r9  r<  r?  rB  rE  rH  rR   rN  rR  rU  rX  r[  r_  rb  re  r   delete_nlopt_doublevectorrT   r&   r%   r   r   r      sA       h--/I/IOdeeeGH8 8 8  ; ; ;8 8 87 7 7B B BC C CB B BB B BB B BB B B3 3 39 9 95 5 54 4 47 7 75 5 53 3 36 6 64 4 45 5 5= = =8 8 8< < <W W W< < <5 5 54 4 4< < <= = == = =: : :8 8 87r%   r   c                   F    e Zd Z ed d d          ZeZd Zej	        Z
dS )roundoff_limitedc                 4    | j                                         S r/   r>   r?   s    r   rA   zroundoff_limited.<lambda>  rB   r%   c                 6    | j                             |          S r/   r>   rD   s     r   rA   zroundoff_limited.<lambda>  rF   r%   rG   rH   c                 R    t          j        | t          j                               d S r/   )r   roundoff_limited_swiginitnew_roundoff_limitedrL   s    r   rR   zroundoff_limited.__init__  s$    (v/J/L/LMMMMMr%   N)r   r   r8   r   r   r   r   rR   r   delete_roundoff_limitedrT   r&   r%   r   rh  rh    sO        h--/I/IOdeeeGHN N N5r%   rh  c                   F    e Zd Z ed d d          ZeZd Zej	        Z
dS )forced_stopc                 4    | j                                         S r/   r>   r?   s    r   rA   zforced_stop.<lambda>  rB   r%   c                 6    | j                             |          S r/   r>   rD   s     r   rA   zforced_stop.<lambda>  rF   r%   rG   rH   c                 R    t          j        | t          j                               d S r/   )r   forced_stop_swiginitnew_forced_stoprL   s    r   rR   zforced_stop.__init__  s$    #D&*@*B*BCCCCCr%   N)r   r   r8   r   r   r   r   rR   r   delete_forced_stoprT   r&   r%   r   rp  rp    sO        h--/I/IOdeeeGHD D D0r%   rp  c                      e Zd Z ed d d          ZeZej        Z	d Z
d Zd Zd Zd	 Zd
 Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Z d Z!d Z"d Z#d Z$d  Z%d! Z&d" Z'd# Z(d$ Z)d% Z*d& Z+d' Z,d( Z-d) Z.d* Z/d+ Z0d, Z1d- Z2d. Z3d/ Z4d0 Z5d1 Z6d2 Z7d3 Z8d4 Z9d5 Z:d6 Z;d7 Z<d8 Z=d9 Z>d: Z?d; Z@d<S )=optc                 4    | j                                         S r/   r>   r?   s    r   rA   zopt.<lambda>  rB   r%   c                 6    | j                             |          S r/   r>   rD   s     r   rA   zopt.<lambda>  rF   r%   rG   rH   c                 H    t          j        | t          j        |            d S r/   )r   opt_swiginitnew_optr   s     r   rR   zopt.__init__  s"    D&.$"788888r%   c                 &    t          j        | g|R  S r/   )r   opt_optimizer   s     r   optimizezopt.optimize  s    "4/$////r%   c                 *    t          j        |           S r/   )r   opt_last_optimize_resultrL   s    r   last_optimize_resultzopt.last_optimize_result  r*  r%   c                 *    t          j        |           S r/   )r   opt_last_optimum_valuerL   s    r   last_optimum_valuezopt.last_optimum_value  r#  r%   c                 *    t          j        |           S r/   )r   opt_get_algorithmrL   s    r   get_algorithmzopt.get_algorithm      '---r%   c                 *    t          j        |           S r/   )r   opt_get_algorithm_namerL   s    r   get_algorithm_namezopt.get_algorithm_name  r#  r%   c                 *    t          j        |           S r/   )r   opt_get_dimensionrL   s    r   get_dimensionzopt.get_dimension  r  r%   c                 &    t          j        | g|R  S r/   )r   opt_set_min_objectiver   s     r   set_min_objectivezopt.set_min_objective      +D848888r%   c                 &    t          j        | g|R  S r/   )r   opt_set_max_objectiver   s     r   set_max_objectivezopt.set_max_objective  r  r%   c                 *    t          j        |           S r/   )r   !opt_remove_inequality_constraintsrL   s    r   remove_inequality_constraintsz!opt.remove_inequality_constraints  s    7===r%   c                 *    t          j        |           S r/   )r   opt_remove_equality_constraintsrL   s    r   remove_equality_constraintszopt.remove_equality_constraints  s    5d;;;r%   c                 &    t          j        | g|R  S r/   )r   opt_add_inequality_constraintr   s     r   add_inequality_constraintzopt.add_inequality_constraint  s    3D@4@@@@r%   c                 &    t          j        | g|R  S r/   )r   opt_add_equality_constraintr   s     r   add_equality_constraintzopt.add_equality_constraint  s    1$>>>>>r%   c                 &    t          j        | g|R  S r/   )r   opt_add_inequality_mconstraintr   s     r   add_inequality_mconstraintzopt.add_inequality_mconstraint  r  r%   c                 &    t          j        | g|R  S r/   )r   opt_add_equality_mconstraintr   s     r   add_equality_mconstraintzopt.add_equality_mconstraint  s    24?$????r%   c                 .    t          j        | ||          S r/   )r   opt_set_param)r   r!   vals      r   	set_paramzopt.set_param  s    #D$444r%   c                 .    t          j        | ||          S r/   )r   opt_get_param)r   r!   
defaultvals      r   	get_paramzopt.get_param  s    #D$
;;;r%   c                 ,    t          j        | |          S r/   )r   opt_has_param)r   r!   s     r   	has_paramzopt.has_param  s    #D$///r%   c                 ,    t          j        | |          S r/   )r   opt_nth_paramr   s     r   	nth_paramzopt.nth_param  s    #D!,,,r%   c                 *    t          j        |           S r/   )r   opt_num_paramsrL   s    r   
num_paramszopt.num_params  rN   r%   c                 &    t          j        | g|R  S r/   )r   opt_get_lower_boundsr   s     r   get_lower_boundszopt.get_lower_bounds      *47$7777r%   c                 &    t          j        | g|R  S r/   )r   opt_set_lower_boundsr   s     r   set_lower_boundszopt.set_lower_bounds  r  r%   c                 &    t          j        | g|R  S r/   )r   opt_get_upper_boundsr   s     r   get_upper_boundszopt.get_upper_bounds  r  r%   c                 &    t          j        | g|R  S r/   )r   opt_set_upper_boundsr   s     r   set_upper_boundszopt.set_upper_bounds  r  r%   c                 *    t          j        |           S r/   )r   opt_get_stopvalrL   s    r   get_stopvalzopt.get_stopval      %d+++r%   c                 ,    t          j        | |          S r/   )r   opt_set_stopval)r   stopvals     r   set_stopvalzopt.set_stopval      %dG444r%   c                 *    t          j        |           S r/   )r   opt_get_ftol_relrL   s    r   get_ftol_relzopt.get_ftol_rel      &t,,,r%   c                 ,    t          j        | |          S r/   )r   opt_set_ftol_rel)r   ftol_rels     r   set_ftol_relzopt.set_ftol_rel      &tX666r%   c                 *    t          j        |           S r/   )r   opt_get_ftol_absrL   s    r   get_ftol_abszopt.get_ftol_abs  r  r%   c                 ,    t          j        | |          S r/   )r   opt_set_ftol_abs)r   ftol_abss     r   set_ftol_abszopt.set_ftol_abs  r  r%   c                 *    t          j        |           S r/   )r   opt_get_xtol_relrL   s    r   get_xtol_relzopt.get_xtol_rel  r  r%   c                 ,    t          j        | |          S r/   )r   opt_set_xtol_rel)r   xtol_rels     r   set_xtol_relzopt.set_xtol_rel  r  r%   c                 &    t          j        | g|R  S r/   )r   opt_get_xtol_absr   s     r   get_xtol_abszopt.get_xtol_abs       &t3d3333r%   c                 &    t          j        | g|R  S r/   )r   opt_set_xtol_absr   s     r   set_xtol_abszopt.set_xtol_abs#  r  r%   c                 &    t          j        | g|R  S r/   )r   opt_get_x_weightsr   s     r   get_x_weightszopt.get_x_weights&      '4t4444r%   c                 &    t          j        | g|R  S r/   )r   opt_set_x_weightsr   s     r   set_x_weightszopt.set_x_weights)  r  r%   c                 *    t          j        |           S r/   )r   opt_get_maxevalrL   s    r   get_maxevalzopt.get_maxeval,  r  r%   c                 ,    t          j        | |          S r/   )r   opt_set_maxeval)r   maxevals     r   set_maxevalzopt.set_maxeval/  r  r%   c                 *    t          j        |           S r/   )r   opt_get_numevalsrL   s    r   get_numevalszopt.get_numevals2  r  r%   c                 *    t          j        |           S r/   )r   opt_get_maxtimerL   s    r   get_maxtimezopt.get_maxtime5  r  r%   c                 ,    t          j        | |          S r/   )r   opt_set_maxtime)r   maxtimes     r   set_maxtimezopt.set_maxtime8  r  r%   c                 *    t          j        |           S r/   )r   opt_get_force_stoprL   s    r   get_force_stopzopt.get_force_stop;      (...r%   c                 ,    t          j        | |          S r/   )r   opt_set_force_stop)r   
force_stops     r   set_force_stopzopt.set_force_stop>      (z:::r%   c                 *    t          j        |           S r/   )r   opt_force_stoprL   s    r   r  zopt.force_stopA  rN   r%   c                 *    t          j        |           S r/   )r   opt_get_errmsgrL   s    r   
get_errmsgzopt.get_errmsgD  rN   r%   c                 ,    t          j        | |          S r/   )r   opt_set_local_optimizer)r   los     r   set_local_optimizerzopt.set_local_optimizerG  s    -dB777r%   c                 *    t          j        |           S r/   )r   opt_get_populationrL   s    r   get_populationzopt.get_populationJ  r
  r%   c                 ,    t          j        | |          S r/   )r   opt_set_population)r   
populations     r   set_populationzopt.set_populationM  r  r%   c                 *    t          j        |           S r/   )r   opt_get_vector_storagerL   s    r   get_vector_storagezopt.get_vector_storageP  r#  r%   c                 ,    t          j        | |          S r/   )r   opt_set_vector_storage)r   vector_storages     r   set_vector_storagezopt.set_vector_storageS  s    ,T>BBBr%   c                 &    t          j        | g|R  S r/   )r   opt_set_initial_stepr   s     r   set_initial_stepzopt.set_initial_stepV  r  r%   c                 ,    t          j        | |          S r/   )r   opt_set_default_initial_stepr   s     r   set_default_initial_stepzopt.set_default_initial_stepY  rO  r%   c                 ,    t          j        | |          S r/   )r   opt_get_initial_stepr   s     r   get_initial_stepzopt.get_initial_step\  r   r%   c                 *    t          j        |           S r/   )r   opt_get_exceptions_enabledrL   s    r   get_exceptions_enabledzopt.get_exceptions_enabled_  r  r%   c                 ,    t          j        | |          S r/   )r   opt_set_exceptions_enabled)r   enables     r   set_exceptions_enabledzopt.set_exceptions_enabledb  s    0v>>>r%   N)Ar   r   r8   r   r   r   r   r   
delete_optrT   rR   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r	  r  r  r  r  r  r  r"  r&  r)  r,  r/  r2  r6  r&   r%   r   rx  rx    s       h--/I/IOdeeeGH(9 9 90 0 05 5 53 3 3. . .3 3 3. . .9 9 99 9 9> > >< < <A A A? ? ?B B B@ @ @5 5 5< < <0 0 0- - -+ + +8 8 88 8 88 8 88 8 8, , ,5 5 5- - -7 7 7- - -7 7 7- - -7 7 74 4 44 4 45 5 55 5 5, , ,5 5 5- - -, , ,5 5 5/ / /; ; ;+ + ++ + +8 8 8/ / /; ; ;3 3 3C C C8 8 8< < <4 4 47 7 7? ? ? ? ?r%   rx  c                 *    t          j        |           S r/   )r   srand)seeds    r   r9  r9  h  s    <r%   c                  (    t          j                    S r/   )r   
srand_timer&   r%   r   r<  r<  k  s    r%   c                 .    t          j        | ||          S r/   )r   version)majorminorbugfixs      r   r>  r>  n  s    >%///r%   c                  (    t          j                    S r/   )r   version_majorr&   r%   r   rC  rC  q      !!!r%   c                  (    t          j                    S r/   )r   version_minorr&   r%   r   rF  rF  t  rD  r%   c                  (    t          j                    S r/   )r   version_bugfixr&   r%   r   rH  rH  w  s     """r%   c                 *    t          j        |           S r/   )r   algorithm_name)as    r   rJ  rJ  z  s     ###r%   )r9   sysr   _swig_python_version_infor   globalsget__package__r   r
   r   builtinsr   ImportErrorr   r'   r,   r5   r   r7   r   r<   exception_swigregisterrV   bad_cast_swigregisterr^   bad_exception_swigregisterrf   logic_error_swigregisterrr   domain_error_swigregisterr|   invalid_argument_swigregisterr   length_error_swigregisterr   out_of_range_swigregisterr   runtime_error_swigregisterr   range_error_swigregisterr   overflow_error_swigregisterr   underflow_error_swigregisterobjectr   SwigPyIterator_swigregisterr   nlopt_doublevector_swigregister
ForcedStopRoundoffLimitedr    RuntimeErrorstrrC  rF  rH  __version__	GN_DIRECTGN_DIRECT_LGN_DIRECT_L_RANDGN_DIRECT_NOSCALGN_DIRECT_L_NOSCALGN_DIRECT_L_RAND_NOSCALGN_ORIG_DIRECTGN_ORIG_DIRECT_LGD_STOGOGD_STOGO_RANDLD_LBFGS_NOCEDALLD_LBFGS	LN_PRAXISLD_VAR1LD_VAR2
LD_TNEWTONLD_TNEWTON_RESTARTLD_TNEWTON_PRECONDLD_TNEWTON_PRECOND_RESTART
GN_CRS2_LMGN_MLSLGD_MLSLGN_MLSL_LDSGD_MLSL_LDSLD_MMA	LN_COBYLA	LN_NEWUOALN_NEWUOA_BOUNDLN_NELDERMEADLN_SBPLX	LN_AUGLAG	LD_AUGLAGLN_AUGLAG_EQLD_AUGLAG_EQ	LN_BOBYQAGN_ISRESAUGLAG	AUGLAG_EQG_MLSL
G_MLSL_LDSLD_SLSQPLD_CCSAQGN_ESCHGN_AGSNUM_ALGORITHMSFAILUREINVALID_ARGSOUT_OF_MEMORYROUNDOFF_LIMITEDFORCED_STOPNUM_FAILURESSUCCESSSTOPVAL_REACHEDFTOL_REACHEDXTOL_REACHEDMAXEVAL_REACHEDMAXTIME_REACHEDNUM_RESULTSrh  roundoff_limited_swigregisterrp  forced_stop_swigregisterrx  opt_swigregisterr9  r<  r>  rJ  r&   r%   r   <module>r     sQ    : 9 9 9 9 9
77799==$$h55  xMMM"""""   [ [ [
 
 
    L L L L L$ L L L
	@ 	@ 	@ 	@ 	@	 	@ 	@ 	@  i ( ( (. . . . .y . . .  X & & &3 3 3 3 3I 3 3 3 " !- 0 0 01 1 1 1 1) 1 1 1    , , ,2 2 2 2 2; 2 2 2 !   . . .6 6 6 6 6{ 6 6 6 % $%5 6 6 62 2 2 2 2; 2 2 2 !   . . .2 2 2 2 2; 2 2 2 !   . . .3 3 3 3 3I 3 3 3 " !- 0 0 01 1 1 1 1- 1 1 1    , , ,4 4 4 4 4] 4 4 4 # "> 2 2 25 5 5 5 5m 5 5 5 $ #O 4 4 48 8 8 8 8V 8 8 8v # "> 2 2 2e8 e8 e8 e8 e8 e8 e8 e8P ' &'9 : : :#"J,OO # # #J"OOO# c&&&(())#-cc2F&2F2H2H.I.II#MccRgRXRgRiRiNjNjj	 * * .  8 &* ?$* ?	
.
.
. . #> 

.
.  			($?		""	?			
??
.	&
."$*  "
.(""(( 6 6 6 6 6} 6 6 6 % $%5 6 6 61 1 1 1 1- 1 1 1    , , ,h? h? h? h? h?& h? h? h?V         0 0 0" " "" " "# # #$ $ $ $ $s$   A 	AAH% %	H10H1