endo vs. exo Diels-Alder reaction

User 870ab5b546

25-06-2012 02:41:21

Hi,


How do I design a reaction definition that obeys the stereospecifity rules of the Diels-Alder reaction, namely, that the stereochemistry of the dienophile is preserved in the product, and that the "out" groups on the termini of the diene end up cis in the product?  I would also like to be able to selectively generate the endo isomer of a Diels-Alder reaction. 


Here's my best shot, but it doesn't work.  When I use trans-crotonaldehyde and trans-1,3-pentadiene, I get all eight products.  Any suggestions?


<?xml version="1.0" ?>
<cml>
<MDocument>
<MChemicalStruct>
<reaction>
<arrow type="DEFAULT" x1="-2.3228183382137724" y1="0.6173163748577306" x2="0.5412106157937222" y2="0.56454533723183" />
<propertyList>
<property dictRef="NAME" title="NAME">
<scalar><![CDATA[Diels-Alder (endo)]]></scalar>
</property>
<property dictRef="EXPLAIN_SELECTIVITY" title="EXPLAIN_SELECTIVITY">
<scalar><![CDATA[The most positively charged dienophile atom becomes 6, and the most negatively charged of diene atoms becomes 1.]]></scalar>
</property>
<property dictRef="SELECTIVITY" title="SELECTIVITY">
<scalar><![CDATA[-charge(ratom(1), "pi"); charge(ratom(6)) ]]></scalar>
</property>
<property dictRef="Number of reactants" title="Number of reactants">
<scalar>2</scalar>
</property>
<property dictRef="Stop after one reaction" title="Stop after one reaction">
<scalar>true</scalar>
</property>
</propertyList>
<reactantList>
<molecule molID="m1">
<atomArray>
<atom id="a1" elementType="C" mrvMap="1"
x2="-6.833749771118164" y2="2.2137838644287804" />
<atom id="a2" elementType="C" mrvMap="2"
x2="-8.167419112166423" y2="1.44376692386974" />
<atom id="a3" elementType="C" mrvMap="3"
x2="-8.167419112166423" y2="-0.096266957248341" />
<atom id="a4" elementType="C" mrvMap="4"
x2="-6.833749771118164" y2="-0.8662838978073815" />
<atom id="a5" elementType="R" rgroupRef="1"
x2="-6.833749771118164" y2="3.7537838644287804"
ligandOrder="a1" />
<atom id="a6" elementType="R" rgroupRef="2"
x2="-5.500070649290128" y2="1.4437838644287804"
ligandOrder="a1" />
<atom id="a7" elementType="R" rgroupRef="3"
x2="-9.501098233994458" y2="2.2137669238697404"
ligandOrder="a2" />
<atom id="a8" elementType="R" rgroupRef="4"
x2="-9.501098233994458" y2="-0.8662669572483416"
ligandOrder="a3" />
<atom id="a9" elementType="R" rgroupRef="5"
x2="-6.833749771118164" y2="-2.4062838978073815"
ligandOrder="a4" />
<atom id="a10" elementType="R" rgroupRef="6"
x2="-5.500070649290128" y2="-0.09628389780738156"
ligandOrder="a4" />
</atomArray>
<bondArray>
<bond atomRefs2="a1 a2" order="2" />
<bond atomRefs2="a2 a3" order="1" />
<bond atomRefs2="a3 a4" order="2" />
<bond atomRefs2="a1 a5" order="1" />
<bond atomRefs2="a1 a6" order="1" />
<bond atomRefs2="a2 a7" order="1" />
<bond atomRefs2="a3 a8" order="1" />
<bond atomRefs2="a4 a9" order="1" />
<bond atomRefs2="a4 a10" order="1" />
</bondArray>
</molecule>
<molecule molID="m2">
<atomArray>
<atom id="a1" elementType="C" mrvMap="5"
x2="-3.7675803537759602" y2="-0.048141988242756284" />
<atom id="a2" elementType="C" mrvMap="6"
x2="-3.7675803537759602" y2="1.4918918928753246" />
<atom id="a3" elementType="R" rgroupRef="7"
x2="-4.856524796803243" y2="-1.1370864312700395"
ligandOrder="a1" />
<atom id="a4" elementType="R" rgroupRef="8"
x2="-2.6786359107486772" y2="-1.1370864312700395"
ligandOrder="a1" />
<atom id="a5" elementType="R" rgroupRef="9"
x2="-4.856524796803243" y2="2.5808363359026076"
ligandOrder="a2" />
<atom id="a6" elementType="R" rgroupRef="10"
x2="-2.6786359107486772" y2="2.5808363359026076"
ligandOrder="a2" />
</atomArray>
<bondArray>
<bond atomRefs2="a1 a2" order="2" />
<bond atomRefs2="a1 a3" order="1" />
<bond atomRefs2="a1 a4" order="1" />
<bond atomRefs2="a2 a5" order="1" />
<bond atomRefs2="a2 a6" order="1" />
</bondArray>
</molecule>
</reactantList>
<productList>
<molecule molID="m3">
<atomArray>
<atom id="a1" elementType="C" mrvMap="1"
x2="3.3206249078114825" y2="2.053367241472186" />
<atom id="a2" elementType="C" mrvMap="2"
x2="1.986955566763224" y2="1.2833503009131455" />
<atom id="a3" elementType="C" mrvMap="3"
x2="1.986955566763224" y2="-0.25668358020493454" />
<atom id="a4" elementType="C" mrvMap="4"
x2="3.3206249078114825" y2="-1.0267005207639759" />
<atom id="a5" elementType="C" mrvMap="5"
x2="4.654294725696899" y2="-0.25668358020493454" />
<atom id="a6" elementType="C" mrvMap="6"
x2="4.654294725696899" y2="1.2833503009131455" />
<atom id="a7" elementType="R" rgroupRef="1"
x2="2.550624907811483" y2="3.3870463633002217"
ligandOrder="a1" />
<atom id="a8" elementType="R" rgroupRef="2"
x2="4.090624907811483" y2="3.3870463633002217"
ligandOrder="a1" />
<atom id="a9" elementType="R" rgroupRef="3"
x2="0.6532764449351887" y2="2.053350300913146"
ligandOrder="a2" />
<atom id="a10" elementType="R" rgroupRef="4"
x2="0.6532764449351887" y2="-1.026683580204935"
ligandOrder="a3" />
<atom id="a11" elementType="R" rgroupRef="5"
x2="2.550624907811483" y2="-2.3603796425920116"
ligandOrder="a4" />
<atom id="a12" elementType="R" rgroupRef="6"
x2="4.090624907811483" y2="-2.3603796425920116"
ligandOrder="a4" />
<atom id="a13" elementType="R" rgroupRef="7"
x2="5.743239168724182" y2="-1.3456280232322178"
ligandOrder="a5" />
<atom id="a14" elementType="R" rgroupRef="8"
x2="6.194294725696899" y2="-0.25668358020493454"
ligandOrder="a5" />
<atom id="a15" elementType="R" rgroupRef="9"
x2="5.4242947256969" y2="2.617029422741181"
ligandOrder="a6" />
<atom id="a16" elementType="R" rgroupRef="10"
x2="6.194294725696899" y2="1.2833503009131455"
ligandOrder="a6" />
</atomArray>
<bondArray>
<bond atomRefs2="a1 a2" order="1">
<bondStereo>W</bondStereo>
</bond>
<bond atomRefs2="a6 a1" order="1">
<bondStereo>W</bondStereo>
</bond>
<bond atomRefs2="a2 a3" order="2" />
<bond atomRefs2="a4 a3" order="1">
<bondStereo>W</bondStereo>
</bond>
<bond atomRefs2="a5 a4" order="1">
<bondStereo>W</bondStereo>
</bond>
<bond atomRefs2="a5 a6" order="1" />
<bond atomRefs2="a1 a7" order="1" />
<bond atomRefs2="a1 a8" order="1" />
<bond atomRefs2="a2 a9" order="1" />
<bond atomRefs2="a3 a10" order="1" />
<bond atomRefs2="a4 a11" order="1" />
<bond atomRefs2="a4 a12" order="1" />
<bond atomRefs2="a5 a13" order="1" />
<bond atomRefs2="a5 a14" order="1" />
<bond atomRefs2="a6 a15" order="1" />
<bond atomRefs2="a6 a16" order="1" />
</bondArray>
</molecule>
</productList>
</reaction>
</MChemicalStruct>
</MDocument>
</cml>

ChemAxon af8e24758b

26-06-2012 14:42:14

Hi,


I'll check it for you and will give you some suggestions soon.


Anna

ChemAxon af8e24758b

03-07-2012 03:48:38

Hi,


I would suggest you to use a selectivity rule, namely the Dreiding Energy ( dreidingEnergy(product(0)) ). The product with the highest Dreiding energy will provide the "endo product". I tried this rule for random examples and worked in many cases.


Let me know how it goes.


Anna

User 870ab5b546

03-07-2012 14:39:19

That's simply not true.  In Diels-Alder reactions, the endo product is usually the higher energy product, and it's also usually the major product.  If Dreiding calculations say that the endo product is lower in energy in many cases, then either there's something wrong with the calculations, or you're confusing the exo and endo products.  See the MRV below.


Anyway, it's not just endo/exo selectivity; if the dienophile is cis, the product needs to be cis, and if the dienophile is trans, the product needs to be trans.  I can't figure out how to write this stereospecifity into the reaction definition.


<?xml version="1.0" ?>
<cml>
<MDocument>
<MTextBox id="o1" toption="NOROT" fontScale="10.0" halign="LEFT"
valign="TOP" autoSize="false">
<Field name="text"><![CDATA[endo (major) ]]></Field>
<MPoint x="-4.331250190734863" y="-3.8500001430511475" />
<MPoint x="-0.20405019073486153" y="-3.850000143051149" />
<MPoint x="-0.20405019073486153" y="-4.650800143051148" />
<MPoint x="-4.331250190734862" y="-4.650800143051146" />
</MTextBox>
<MTextBox id="o2" toption="NOROT" fontScale="10.0" halign="LEFT"
valign="TOP" autoSize="false">
<Field name="text"><![CDATA[exo (minor) ]]></Field>
<MPoint x="3.561249675750732" y="-3.9462502193450923" />
<MPoint x="7.688449675750734" y="-3.946250219345094" />
<MPoint x="7.688449675750734" y="-4.747050219345093" />
<MPoint x="3.561249675750732" y="-4.747050219345092" />
</MTextBox>
<MChemicalStruct>
<molecule molID="m1">
<atomArray>
<atom id="a1" elementType="C"
x2="-3.5612499713897705" y2="1.2512838882706385" />
<atom id="a2" elementType="C"
x2="-4.894919312438029" y2="0.4812669477115979" />
<atom id="a3" elementType="C"
x2="-4.894919312438029" y2="-1.0587669334064833" />
<atom id="a4" elementType="C"
x2="-3.5612499713897705" y2="-1.8287838739655238" />
<atom id="a5" elementType="C"
x2="-2.227580630341512" y2="-1.0587669334064833" />
<atom id="a6" elementType="C"
x2="-2.227580630341512" y2="0.4812669477115979" />
<atom id="a7" elementType="C"
x2="-0.7630423826329151" y2="-1.53465764045607" />
<atom id="a8" elementType="O"
x2="0.14217881441444824" y2="-0.2887849823898645" />
<atom id="a9" elementType="C"
x2="-0.7629327335188796" y2="0.957055027344637" />
<atom id="a10" elementType="C"
x2="-3.162668641931888" y2="-0.23624188421452663" />
<atom id="a11" elementType="O"
x2="-0.36446105317503286" y2="-3.022183412941235" />
<atom id="a12" elementType="H"
x2="-2.227580630341512" y2="2.021266947711598" />
<atom id="a13" elementType="H"
x2="-2.227580630341512" y2="-2.598766933406483" />
<atom id="a14" elementType="C"
x2="4.456626329839654" y2="1.1622895182548052" />
<atom id="a15" elementType="C"
x2="3.1229569887913957" y2="0.3922725776957645" />
<atom id="a16" elementType="C"
x2="3.1229569887913957" y2="-1.1477613034223166" />
<atom id="a17" elementType="C"
x2="4.456626329839654" y2="-1.917778243981357" />
<atom id="a18" elementType="C"
x2="5.790295670887913" y2="-1.1477613034223166" />
<atom id="a19" elementType="C"
x2="5.790295670887913" y2="0.3922725776957645" />
<atom id="a20" elementType="C"
x2="7.25483391859651" y2="-1.6236520104719032" />
<atom id="a21" elementType="O"
x2="8.160055115643873" y2="-0.37777935240569793" />
<atom id="a22" elementType="C"
x2="7.254943567710545" y2="0.8680606573288037" />
<atom id="a23" elementType="C"
x2="4.855207659297537" y2="-0.32523625423036007" />
<atom id="a24" elementType="O"
x2="7.653415248054392" y2="-3.1111777829570686" />
<atom id="a25" elementType="H"
x2="5.790295670887913" y2="1.9322725776957643" />
<atom id="a26" elementType="H"
x2="5.790295670887913" y2="-2.6877613034223167" />
<atom id="a27" elementType="O"
x2="-0.28698212839928017" y2="2.421661125067259" />
<atom id="a28" elementType="O"
x2="7.730894172830144" y2="2.332666755051426" />
</atomArray>
<bondArray>
<bond atomRefs2="a1 a2" order="1" />
<bond atomRefs2="a1 a6" order="1" />
<bond atomRefs2="a2 a3" order="2" />
<bond atomRefs2="a3 a4" order="1" />
<bond atomRefs2="a4 a5" order="1" />
<bond atomRefs2="a5 a7" order="1" />
<bond atomRefs2="a6 a5" order="1" />
<bond atomRefs2="a6 a9" order="1" />
<bond atomRefs2="a7 a8" order="1" />
<bond atomRefs2="a8 a9" order="1" />
<bond atomRefs2="a1 a10" order="1">
<bondStereo>W</bondStereo>
</bond>
<bond atomRefs2="a4 a10" order="1">
<bondStereo>W</bondStereo>
</bond>
<bond atomRefs2="a7 a11" order="2" />
<bond atomRefs2="a6 a12" order="1">
<bondStereo>W</bondStereo>
</bond>
<bond atomRefs2="a5 a13" order="1">
<bondStereo>W</bondStereo>
</bond>
<bond atomRefs2="a14 a15" order="1" />
<bond atomRefs2="a14 a19" order="1" />
<bond atomRefs2="a14 a23" order="1">
<bondStereo>W</bondStereo>
</bond>
<bond atomRefs2="a15 a16" order="2" />
<bond atomRefs2="a16 a17" order="1" />
<bond atomRefs2="a17 a18" order="1" />
<bond atomRefs2="a17 a23" order="1">
<bondStereo>W</bondStereo>
</bond>
<bond atomRefs2="a18 a20" order="1" />
<bond atomRefs2="a19 a18" order="1" />
<bond atomRefs2="a18 a26" order="1">
<bondStereo>H</bondStereo>
</bond>
<bond atomRefs2="a19 a22" order="1" />
<bond atomRefs2="a19 a25" order="1">
<bondStereo>H</bondStereo>
</bond>
<bond atomRefs2="a20 a21" order="1" />
<bond atomRefs2="a20 a24" order="2" />
<bond atomRefs2="a21 a22" order="1" />
<bond atomRefs2="a9 a27" order="2" />
<bond atomRefs2="a22 a28" order="2" />
</bondArray>
</molecule>
</MChemicalStruct>
</MDocument>
</cml>

ChemAxon af8e24758b

04-07-2012 15:58:55

Yes, you are right, endo is usually the major product with the higher energy in Diels-Alder cycloaddition.
Dreiding calculation says that the endo product has higher energy value. 


Dreiding energy calculations for your last example (products of the DA reaction of cyclopentadiene and maleic anhydride) say, that 



I am sorry if my previous message was misleading. 

User 870ab5b546

05-07-2012 13:44:26

Oh, that was my bad.  I misread your original statement.  Sorry.


It still doesn't solve the problem of preserving the stereochemistry of the diene or dienophile in the product.  For example, CCOC(=O)C(=C)C(=O)OCC.C\C=C\C=C\C>>CCOC(=O)C1(C[C@@H](C)C=C[C@H]1C)C(=O)OCC and C\C(Cl)=C/C=O.C=CC=C>>C[C@@]1(Cl)CC=CC[C@H]1C=O.  Here the Dreiding energies are irrelevant to the stereochemical outcomes.


I wrote a 600-line workaround to add the correct stereochemistry to the Diels-Alder adduct produced by Reactor, but it would be nice not to have to use it.

User 870ab5b546

06-07-2012 17:55:04

I've written a Java class that takes the products of a Diels-Alder reaction as generated by Reactor and adds the appropriate stereochemistry.  It works for inter- and intramolecular Diels-Alder reactions of acyclic dienes,carbocyclic dienes of sizes 5-7, and furans with alkene or alkyne dienophiles.  You can specify whether you want the endo or exo products.  If you're interested in it, let me know.

ChemAxon d76e6e95eb

06-07-2012 18:34:12

That sounds great, Bob! If you upload it here as an attachment to this public forum topic, everyone will be able to access it, so the entire community can learn and benefit from it. Thank you for the nice contribution.


Cheers,


Gyuri

User 870ab5b546

06-07-2012 19:53:27

OK, here you go.  The code assumes that you use a reaction definition, such as the following one, with the atoms mapped in a particular way.  It also assumes that Reactor was run with mapping of the product atoms turned on, and that a 2D clean has been executed on the products.


<?xml version="1.0" ?>
<cml>
<MDocument>
<MChemicalStruct>
<reaction>
<arrow type="DEFAULT" x1="-2.3228183382137724" y1="0.6173163748577306" x2="0.5412106157937222" y2="0.56454533723183" />
<propertyList>
<property dictRef="NAME" title="NAME">
<scalar><![CDATA[Diels-Alder (endo)]]></scalar>
</property>
<property dictRef="EXPLAIN_SELECTIVITY" title="EXPLAIN_SELECTIVITY">
<scalar><![CDATA[The most positively charged dienophile atom becomes 6, and the most negatively charged of diene atoms becomes 1.]]></scalar>
</property>
<property dictRef="SELECTIVITY" title="SELECTIVITY">
<scalar><![CDATA[-charge(ratom(1), "pi"); charge(ratom(6)) ]]></scalar>
</property>
</propertyList>
<reactantList>
<molecule molID="m1">
<atomArray
atomID="a1 a2 a3 a4 a5 a6"
elementType="C C C C C C"
mrvMap="1 2 3 4 7 9"
mrvQueryProps="0 0 0 0 0 0"
mrvPseudo="0 0 0 0 AH AH"
x2="-9.624999523162842 -10.9586688642111 -10.9586688642111 -9.624999523162842 -9.624999523162842 -9.624999523162842"
y2="2.1656588656208733 1.3956419250618328 -0.1443919560562481 -0.9144088966152886 3.7056588656208733 -2.4544088966152886"
/>
<bondArray>
<bond atomRefs2="a1 a2" order="2" />
<bond atomRefs2="a2 a3" order="1" />
<bond atomRefs2="a3 a4" order="2" />
<bond atomRefs2="a1 a5" order="1" />
<bond atomRefs2="a4 a6" order="1" />
</bondArray>
</molecule>
<molecule molID="m2">
<atomArray
atomID="a1 a2 a3 a4 a5 a6"
elementType="C C C C C C"
mrvMap="5 6 13 14 11 12"
mrvQueryProps="0 0 0 0 0 0"
mrvPseudo="0 0 AH AH AH AH"
x2="-4.826330387154561 -4.826330387154561 -6.160009508982597 -3.4926512653265256 -6.160009508982597 -3.4926512653265256"
y2="-0.1925169846664776 1.3475168964516033 2.117516896451604 2.1175168964516033 -0.9625169846664782 -0.9625169846664775"
/>
<bondArray>
<bond atomRefs2="a1 a2" order="2" />
<bond atomRefs2="a2 a3" order="1" />
<bond atomRefs2="a2 a4" order="1" />
<bond atomRefs2="a1 a5" order="1" />
<bond atomRefs2="a1 a6" order="1" />
</bondArray>
</molecule>
</reactantList>
<productList>
<molecule molID="m3">
<atomArray
atomID="a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12"
elementType="C C C C C C C C C C C C"
mrvMap="1 2 3 4 5 6 7 13 14 12 11 9"
mrvQueryProps="0 0 0 0 0 0 0 0 0 0 0 0"
mrvPseudo="0 0 0 0 0 0 AH AH AH AH AH AH"
x2="4.956875165303548 3.6232058242552894 3.6232058242552894 4.956875165303548 6.290544983188965 6.290544983188965 4.186875165303548 7.060544983188965 7.830544983188965 7.830544983188965 7.060544983188965 4.186875165303548"
y2="2.053367241472186 1.2833503009131455 -0.25668358020493454 -1.0267005207639759 -0.25668358020493454 1.2833503009131455 3.3870463633002217 2.617029422741181 1.2833503009131455 -0.25668358020493454 -1.59036270203297 -2.3603796425920116"
/>
<bondArray>
<bond atomRefs2="a1 a2" order="1" />
<bond atomRefs2="a6 a1" order="1" />
<bond atomRefs2="a2 a3" order="2" />
<bond atomRefs2="a4 a3" order="1" />
<bond atomRefs2="a5 a4" order="1" />
<bond atomRefs2="a5 a6" order="1" />
<bond atomRefs2="a1 a7" order="1" />
<bond atomRefs2="a6 a8" order="1" />
<bond atomRefs2="a6 a9" order="1" />
<bond atomRefs2="a5 a10" order="1" />
<bond atomRefs2="a5 a11" order="1" />
<bond atomRefs2="a4 a12" order="1" />
</bondArray>
</molecule>
</productList>
</reaction>
</MChemicalStruct>
</MDocument>
</cml>

ChemAxon d76e6e95eb

06-07-2012 20:14:29

Brilliant, thank you, Bob!