Skip to content

Instantly share code, notes, and snippets.

@cohnt
Last active January 29, 2024 19:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save cohnt/56e887560451751d88149b1ff42981d4 to your computer and use it in GitHub Desktop.
Save cohnt/56e887560451751d88149b1ff42981d4 to your computer and use it in GitHub Desktop.
HPolyhedron where MaximumVolumeInscribedEllipsoid Fails
import numpy as np
from pydrake.all import HPolyhedron
A=np.array([[ 1.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00 ],\
[ 0.000000000000000000e+00, 0.000000000000000000e+00, -1.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00 ],\
[ 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, -1.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00 ],\
[ 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, -1.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00 ],\
[ 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, -1.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00 ],\
[ 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 1.000000000000000000e+00, 0.000000000000000000e+00 ],\
[ 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 0.000000000000000000e+00, 1.000000000000000000e+00 ],\
[ -0.000000000000000000e+00, -0.000000000000000000e+00, -0.000000000000000000e+00, -0.000000000000000000e+00, -0.000000000000000000e+00, -0.000000000000000000e+00, -0.000000000000000000e+00, -1.000000000000000000e+00 ],\
[ -1.374063278792467827e+03, -4.266971085786090612e+02, -1.340824529416124733e+03, 1.027799262005424453e+03, -2.624884913958158563e+02, 1.414325751831109301e+03, 1.622139374046760452e+00, -1.785414981272381851e+00 ],\
[ -1.696025981413002910e+03, -1.409730718618172034e+02, -1.840979105289077779e+03, 4.618491873291042111e+02, -1.233753496294971455e+03, 8.989326741943681327e+02, -1.910239573548855319e+01, 2.102513758682089673e+01 ],\
[ -3.412076744898229208e+02, 1.499178206779434731e+04, 6.540984181430253557e+02, 6.498961800214171490e+03, -3.693320595875953131e+03, 4.305820850891175724e+03, -1.671988518102618286e+02, 2.590343967436457206e+03 ],\
[ -1.148748484678518935e+03, -6.650263523125090614e+02, -1.013004819717027203e+03, 1.432400908748661095e+03, 2.217695417287046666e+02, 1.622261241104343526e+03, -9.196020150630257461e+00, 1.128590554344555130e-05 ],\
[ -1.024952774331922001e+03, -6.539412114623544312e+02, -8.263353086979564068e+02, 1.773091964997806144e+03, -3.613011104052432643e+02, 1.567022247962492884e+03, 5.062709147378718910e+00, -8.762823054189183836e+00 ],\
[ -1.323029033503582241e+03, -9.202903718872909167e+02, -6.965018060632744437e+02, 1.688335674344072459e+03, -2.970603001788063580e+02, 1.393792058243303927e+03, -1.245103207256681443e+01, 6.677097263500186841e+01 ],\
[ 1.599184183324977539e+03, -1.954039003609540941e+03, 4.658326082912287347e+03, 5.645563554342483258e+03, 4.243208383537861664e+03, 2.268303793925972059e+03, -8.946209736144794533e+00, 3.542197391108414877e+02 ],\
[ 1.784008102099416874e+03, -1.714095708690933407e+03, 4.503647858559434098e+03, 5.623912682363383283e+03, 4.211515942972488119e+03, 2.424574046319378795e+03, 2.095827923903614831e+01, 3.043919326488309025e+02 ],\
[ -1.767422436761911740e+03, -1.133687891579495044e+03, -6.154341720915557516e+02, 1.384176340473499749e+03, 6.014279710797154621e+01, 1.261895278233105046e+03, -2.800711866331573319e+01, 8.727125364606180824e+01 ],\
[ 7.938862585591888319e+02, -3.589485614805623300e+03, 3.196119528405470192e+03, 4.356758340314641828e+03, 7.707969213959638182e+03, 7.755082088755438008e+02, -6.059004405666069033e+02, 4.802441251635381150e+02 ],\
[ 4.441320338907504265e+03, 1.931497240237399456e+04, 1.454148602620855490e+04, 5.207467250989284366e+02, 1.192164704257728954e+04, -8.917254829645977225e+03, -2.111678950112185703e+04, 3.141392653589793190e+04 ],\
[ 4.441320338907504265e+03, 2.059275754250915998e+04, 1.330830969751478005e+04, 1.585956532736452118e+03, 1.265677295932991183e+04, -7.906379542988459434e+03, -3.666489465358245798e+04, 2.002175877290812787e+04 ],\
[ 2.243773922056577703e+03, -4.784612793400019655e+03, 2.753979934412331659e+03, 6.115640725565903267e+03, 5.405100371308862123e+03, -2.033156374700162417e+02, -8.304643531937872467e+02, -1.028427304332577478e+03 ],\
[ -1.222647842974646892e+03, -8.341672125238300168e+02, -7.589073932693235065e+02, 1.699191894577882749e+03, -2.922962260872629940e+02, 1.451073592595868377e+03, 5.257554628081972936e+00, 3.725777087126402876e+01 ],\
[ 1.918979979670005832e+03, 5.386498016207033288e+02, 1.937851481775725233e+03, -2.111125897806038665e+03, 3.855840362884777051e+01, -2.281885011702438078e+03, -1.164888667304353476e-02, 3.578434593087820303e-03 ],\
[ -1.244804347965651232e+03, -4.031132774412311619e+02, -1.264353897801937592e+03, 6.823857200719585308e+02, -3.351998461773764006e+02, 9.836857318967684023e+02, -2.627755790740593511e-06, 8.533337307166100061e+00 ],\
[ -9.889554796984575660e+03, 1.721302013478493973e+04, 1.059117692738820188e+04, -1.254178059577881754e+02, 3.003205044586438817e+03, -2.642148589609751980e+03, -1.144837350057770209e+00, -1.889823949439737407e+04 ],\
[ -1.698964703764973456e+04, 2.395777607340749091e+04, 1.388593399618177318e+04, 3.144169751926151548e+03, 1.578199830566241326e+04, -7.031626879181978438e+03, -4.867472133718389523e+04, -4.105046576690680922e+03 ],\
[ -1.505039245256627510e+03, -9.792167646798163787e+02, -1.599329240833977565e+03, -4.591089752128940518e+02, -9.729269807600537661e+02, 5.178682755654273251e+02, -2.175231817382883293e+00, -4.634678859195773271e+01 ],\
[ -2.582048958031721668e+03, -3.495964192006237681e+03, -1.486252227285413937e+03, -3.635306706279259743e+03, 5.868915433575123643e+03, 2.811114052504146912e+03, 2.138255621735529743e+01, -9.004046883748051187e+02 ],\
[ -1.389102605279107956e+04, 1.468696667903229536e+04, 1.349439432294910330e+04, 1.414391052217161450e+04, 4.899463695096466836e+03, -1.730722536925506211e+04, -3.901218813967465394e+04, 2.464796850919333883e+04 ],\
[ 2.925547596598665677e+03, -9.791127929695447847e+02, 1.319431419327479261e+03, -2.464346478673906859e+03, -2.617212558396264512e+02, -1.924574848576936574e+03, -2.244715845567846202e+01, -6.836011239585992882e+00 ],\
[ -8.066499584001194307e+03, 9.157774391228422246e+03, 4.523690736927932221e+02, -4.640530531537905517e+03, 9.126927278759163528e+03, 5.390245881784081575e+03, -6.652677071191777941e+04, -4.895847103214206072e+03 ],\
[ -1.571262191639627235e+04, 1.444933307979139317e+04, 1.072025473449364654e+04, 9.940546707525112652e+03, 1.004800262375160673e+04, -1.727528088410249256e+04, -5.297984348557905469e+04, -1.473191299069571687e+04 ],\
[ 4.441320338907504265e+03, -1.281409033837372226e+04, -4.072589309945522473e+03, 2.477843888347752568e+02, 8.096988874254416260e+03, -1.789511382458628304e+03, -2.406251028699015933e+03, 4.672158463450379713e+03 ],\
[ 1.588835118516929015e+02, -6.829363303404002181e+03, -3.944020976265694003e+02, -3.995675940702820753e+03, 4.275697309423680963e+03, 4.602740857046678684e+03, -7.941681627008590283e+01, -1.180179368565736979e+02 ],\
[ -7.296454023579768545e+03, -2.635440920410932904e+03, 6.173921960897152530e+03, -4.429270937960221090e+03, -6.729195984854729886e+02, 1.677069223026297323e+03, -3.130461460804023659e+02, 2.212449382388328559e+03 ],\
[ 2.931819727309630252e+03, -1.210377670485556882e+04, -6.149268680094808587e+03, -7.128074215324043053e+02, 8.074261749169866562e+03, -4.633277265299296232e+03, -2.600297949710688044e+03, 4.518011790819671660e+03 ],\
[ 3.721000491485524435e+03, -1.333439790859260575e+04, -4.431480351136851823e+03, 1.996216398518619826e+03, 4.424713263870634364e+03, -4.577511030932663743e+03, -2.139132654334589915e+03, -4.007471048343505117e+03 ],\
[ -6.190182407505915762e+03, 1.025903314428270460e+04, -4.727919365471233505e+03, -9.853969616976883117e+03, 6.745655566294743949e+03, 4.339227353524377577e+03, -5.209372030220782790e+02, -2.187820877282007132e+03 ],\
[ -2.357045831323221137e+03, -1.851821604006886162e+02, -3.117596281480752168e+03, -5.349202209774066432e+03, 6.067889947808220313e+03, 3.606205744205719384e+03, -1.266113573957539131e+02, -1.712007363976697434e+02 ],\
[ 2.269062932690921571e+03, -1.329601876326644197e+04, -3.809191576997052834e+03, 2.046023694025311670e+02, 6.802900330973615382e+03, -4.409624552655353909e+03, -1.873214674030918559e+03, -4.090292123048162466e+03 ],\
[ -3.012513452825231980e+03, 2.006463944246990877e+03, -4.946965318484099953e+03, -9.795208052488568740e+01, 8.514201495703704495e+03, -1.263118704172274647e+03, -6.685119237773993518e+04, -2.582437758780942750e+04 ],\
[ -1.493483535783938532e+04, 1.743612208378631112e+04, 1.466785253753233178e+02, 4.773540291803095897e+03, 1.914833135026231685e+04, -1.996146217146716299e+04, -5.164460626470500574e+04, -1.648831843288710297e+04 ],\
[ -1.806825009390227251e+03, 1.094485845907556359e+04, -2.837613666942049349e+03, -4.597434961102692796e+03, 3.328685031806965981e+03, 7.788239443498552646e+03, -6.713734883562262985e+04, -2.444850990106890549e+03 ],\
[ -9.919689386219206426e+03, 1.979155621692237764e+04, -5.355403916360171024e+03, 4.954176680742591998e+03, 1.779420499192903299e+04, -2.005041701142515012e+04, -5.503657092899436248e+04, -6.805258109940823488e+03 ],\
[ -4.909575709330811151e+03, 7.243936010928333644e+02, -4.251914917101853462e+03, -2.494037302702909528e+03, 7.078265138152400141e+03, -3.515641356859364805e+03, -6.719255185121792601e+04, -2.327987969443633119e+04 ],\
[ -5.935519405748941608e+03, 1.307256161355786935e+04, -4.319641923287243117e+03, -1.128309443439732240e+04, 1.271561496527740019e+03, -5.167474435056407174e+02, -4.576629149169319817e+02, -9.182419704588506647e+03 ],\
[ -5.957908677464116408e+03, 1.322521459563581266e+04, -4.243305302205238149e+03, -1.107857645146875620e+04, 1.389236468383234751e+03, -3.324378044105369554e+02, -4.686275073043044586e+02, -8.758387540646528578e+03 ],\
[ -1.049418326491453627e+03, 5.456941448488854803e+03, -2.055266041780967498e+03, -4.375092994486151838e+03, -8.373250380404542739e+03, -4.859795491566378587e+03, -1.801484647841489277e+02, 4.089303853679249414e+02 ],\
[ -2.151281229787826987e+02, -9.208082868890249301e+03, 3.763200201951200086e+01, -3.522802174714056946e+03, 2.939654535498572386e+03, -2.341498324595181657e+03, -5.562801809795514885e+01, -6.855527841165298923e+03 ],\
[ 4.441320338907504265e+03, -4.135820416002512729e+02, 7.593097450196078171e+03, 3.409643556410604106e+03, 4.764583970408118148e+03, -5.380593363466746268e+02, 2.217301470906152261e+01, 5.741812303037230549e+02 ],\
[ 9.619283620127649783e+02, 2.005152036558581131e+03, 2.470454213214381525e+03, -1.608757940456673168e+03, 3.556797337619954646e+02, -2.675099287568465570e+03, -7.036529462678409175e-01, -3.695086329313923557e-01 ],\
[ -2.695618635217655878e+02, 1.596512682919357212e+04, 1.823063157521929043e+03, 5.032333357078373410e+03, -3.789454128249944915e+03, 2.277593714166379414e+03, -1.702214866638707065e+02, 2.415589669968993803e+03 ],\
[ 4.114307304461810418e+03, -9.711954845103835510e+01, 7.648083475607285436e+03, 3.414049294231338081e+03, 4.762558366712301904e+03, -6.957769985484319477e+02, 1.927576794999108500e+01, 5.250719619636701054e+02 ],\
[ -1.220088819382114707e+03, 1.430032398273419858e+04, 6.170178691365517807e+03, 9.361632832199882614e+03, -2.339331193378972785e+03, 2.291758560546233184e+03, -7.378798684782417183e+01, 2.016238167465687184e+03 ]])
b = np.array([
2.967060000000000031e+00,
2.967060000000000031e+00,
2.094395000000000007e+00,
2.967060000000000031e+00,
2.094395000000000007e+00,
3.054326000000000096e+00,
2.503162654239445839e-01,
2.891076388165848332e+00,
-2.417484309927724098e+03,
1.310497242030140569e+03,
6.304431215968366814e+03,
-4.305475826559716552e+03,
-3.253460637944944210e+03,
-4.339431027555109722e+03,
-2.072398829032877620e+04,
-1.993637959072281956e+04,
-6.144066416270918126e+03,
-2.446761684406159475e+04,
1.661850214923027306e+04,
3.649020490546126530e+04,
-1.291039991619129978e+04,
-3.966564399168763430e+03,
6.397100899839839258e+03,
-1.352179467594286734e+03,
1.335351341340613544e+04,
4.751220339777667687e+04,
2.084843748746015990e+03,
-1.188928121883034510e+04,
2.607565182930935407e+04,
1.142974635361405126e+04,
1.502567539536706172e+05,
1.040625842368987942e+05,
1.088846373907450470e+04,
-4.420545745901511509e+03,
-2.625815695430482083e+04,
1.610268353125402064e+04,
3.027851824267996199e+04,
1.885824665110950036e+03,
-7.501007243854736771e+03,
2.152932837507340810e+04,
2.331732267190210405e+05,
1.276329698469872383e+05,
1.824130347681512358e+05,
1.458137136495660816e+05,
2.272723317196674470e+05,
3.593053716971634276e+04,
3.402111916452828882e+04,
3.800192855818387034e+04,
1.557654946347765690e+04,
-1.415498507887688174e+04,
1.889027922549647656e+03,
8.203717242496579274e+03,
-1.504244448261835169e+04,
-9.575785691170609425e+03,
])
h = HPolyhedron(A, b)
h.MaximumVolumeInscribedEllipsoid()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment