
    biL                     v    d dl mZ d dlZd dlZd dlmZ d dlZd dlm	Z
 d dlmZ ej                  d        Zd Zy)    )SimpleNamespaceN)sparse)load_high_accuracyc                 >   t               }t        j                  j                  d       d|_        d|_        t        j                  |j                  |j                  f      |_        t        j                  |j                        |_
        t        j                  |j
                  |j                  dd      |_        t        j                  j                  |j
                        |_        |j                  |_        ddddd	d
ddd|d
|_        t!        j"                  |       |_         |j$                  j&                  d|j                  |j                  |j                  |j                  |j                  d|j                   ||_        ||_        ||_        |S )N      g      ?csc)densityformatFgư>Tg?i  )
verboseeps_abseps_relscalingalphamax_iter	polishingwarm_startingpolish_refine_itersolver_type)algebra)PqAlu )r   nprandomseednmr   
csc_matrixr   zerosr   r   randr   r   optsosqpOSQPmodelsetuprtolatoldecimal_tol)r   r   r+   r*   r,   selfs         V/home/cdr/jupyterlab/.venv/lib/python3.12/site-packages/osqp/tests/feasibility_test.pyr-   r-   
   s,   DIINN1DFDF/0DFXXdffDF]]4664663uEDFYY^^DFF#DFVVDF"DI 7+DJDJJStvv466TVVtvvSSDIDI"DK    c                 :   | j                   j                         }t        d      \  }}}| j                   j                  dk(  rt	        j
                  |j                  || j                  | j                         t	        j
                  |j                  || j                  | j                         t	        j                  |j                  j                  || j                         y |j                  j                  | j                   j                  d      k(  sJ y )Ntest_feasibility_problemdirect)r*   r+   )decimalOSQP_MAX_ITER_REACHED)r(   solver   r   nptestassert_allclosexr*   r+   yassert_almost_equalinfoobj_valr,   
status_valconstant)r-   resx_soly_solobj_sols        r.   r1   r1   .   s    
**


C./IJE5'zz)suue$))$))Lsuue$))$))L""388#3#3WdFVFVWxx""djj&9&9:Q&RRRRr/   )typesr   r&   numpyr   scipyr   pytestnumpy.testingtestingr6   osqp.tests.utilsr   fixturer-   r1   r   r/   r.   <module>rK      s9    !      /    F
Sr/   