B ÔÂ_ƒã@s¸dddgZddlZddlZddlmZmZddlmZddlm Z ddl m Z m Z m Z mZmZddlZdaeƒddfd d „Zeƒdfd d „Zdd d„Zddd„Zddd„Zddd„ZdS)Úpyomo2lpÚpyomo2nlÚ pyomo2dakotaéN)ÚOptionsÚ Container)Ú pyomo_command)Ú ProblemFormat)Ú ObjectiveÚVarÚ ConstraintÚvalueÚ ConcreteModelc CsÞ|dk r |addl}|jjdkrDttjkr4d|j_ndttƒ|j_t|j_t|d}d}yD|j j   |¡|j j j ||d|j rˆtƒS|j j  |¡}||_Wn&|j j j|tƒddd‚YnX|j j j||jd|S)Nrz unknown.lpzunknown.)Úoptions)Úparser)ÚmodelÚinstanceÚresults)r)Ú_formatÚ pyomo.environrÚ save_filerZcpxlpÚstrÚ save_formatrÚ scriptingÚutilZsetup_environmentZapply_preprocessingÚerrorrZ create_modelrÚfinalizer )rrZ model_formatÚpyomoÚdataÚ model_data©rú;/tmp/pip-unpacked-wheel-d4p3hk07/pyomo/scripting/convert.pyÚconverts2      r!cCsÈddl}tj |jj¡}tj |¡d}|jjdkr@|d|j_tj|j_ d|j_ t ||ƒ}|j }d}g}g} g} g} |j  ¡} x°|jtddD]ž} t| ƒ| kr|d7}| | j¡| j\}}|dk rÖ|  t|ƒ¡n |  d¡|dk rø|  t|ƒ¡n |  d¡y t| ƒ}Wnd}YnX|  t|ƒ¡qWd}g}x,|jtddD]}|d7}| |j¡qJWd}g}g}g}x||jtddD]j}|d7}| |j¡|jdk r¾| t|jƒ¡n | d¡|jdk ræ| t|jƒ¡n | d¡qˆWt|dd ƒ}| d ¡| d ¡| d t|ƒd ¡| d¡x|D]}| d|¡q>W| dd | ¡d ¡| dd | ¡d ¡| dd | ¡d ¡| d¡| d¡| d|jjd¡| d¡| d¡| dt|ƒd ¡|dkrB| dt|ƒd ¡| dd |¡d ¡| dd |¡d ¡| d¡x|D]}| d|¡qRW|dkr’x|D]}| d|¡qzW| d¡| d¡| ¡tj  d|df¡|S)Nrz.nlT)Úactiveéz-infÚinfz.dakÚwz!#--- Dakota variables block ---# z variables z continuous_design Ú z descriptors z '%s' z lower_bounds ú z upper_bounds z initial_point z!#--- Dakota interface block ---# z interface z algebraic_mappings = 'z' z!#--- Dakota responses block ---# z responses z objective_functions z# nonlinear_inequality_constraints z analytic_gradients z no_hessians z+Dakota input fragment written to file '%s' )!rÚosÚpathÚbasenamerrÚsplitextrÚnlrZsymbolic_solver_labelsr!rZ symbol_mapZgetByObjectDictionaryZcomponent_data_objectsr ÚidÚappendÚnameZboundsrr r r ÚlowerÚupperÚopenÚwriteÚjoinÚcloseÚsysÚstdout)rrrZ model_fileZmodel_file_no_extrrÚ variablesZvar_descriptorsZvar_lbZvar_ubZ var_initialZtmpDictÚvarZ_lbZ_ubÚvalZ objectivesZobj_descriptorsÚobjÚ constraintsZcons_descriptorsZcons_lbZcons_ubÚconZdakfragZvdZodZcdrrr Úconvert_dakotaOs¢                                r>cCs.ddlm}|dkr|ƒS|ddg|ƒSdS)Nr)Úmainr!z --format=lp)Úpyomo.scripting.pyomo_mainr?)Úargsr?rrr rÛs cCs.ddlm}|dkr|ƒS|ddg|ƒSdS)Nr)r?r!z --format=nl)r@r?)rAr?rrr râs cCs.ddlm}|dkr|ƒS|ddg|ƒSdS)Nr)r?r!z --format=bar)r@r?)rAr?rrr Ú pyomo2barés rBcCs.ddlm}|dkr|ƒS|ddg|ƒSdS)Nr)r?r!z--format=dakota)r@r?)rAr?rrr rðs )N)N)N)N)Ú__all__r(r6Z pyutilib.miscrrZ pyomo.commonrZ pyomo.optrZpyomo.core.baser r r r r Zpyomo.scripting.utilrrr!r>rrrBrrrrr Ú s   1