modules/chempy/champ/formal_charges.py (418 lines of code) (raw):
formal_charge_dict = {
'NHE': [
(
'N<0>',
{
0: 0,
},
),
],
'NME': [
(
'C<0>N<1>',
{
0: 0,
1: 0,
},
),
],
'ACE': [
(
'C<0>(=O<1>)C<2>',
{
0: 0,
1: 0,
2: 0,
},
),
],
'ALA': [
(
'N<0>C<1>(C<2>)C<3>=O<4>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
},
),
],
'ARG': [
(
'N<0>C<1>(C<2>C<3>C<4>N<5>C<6>(N<7>)=N<8>)C<9>=O<10>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
6: 0,
7: 0,
8: 1,
9: 0,
10: 0,
},
),
],
'ASP': [
(
'N<0>C<1>(C<2>C<3>(O<4>)=O<5>)C<6>=O<7>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: -1,
5: 0,
6: 0,
7: 0,
},
),
],
'ASN': [
(
'N<0>C<1>(C<2>C<3>(=O<4>)N<5>)C<6>=O<7>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
6: 0,
7: 0,
},
),
],
'CYS': [
(
'N<0>C<1>(C<2>S<3>)C<4>=O<5>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
},
),
],
'CYX': [
(
'N<0>C<1>(C<2>S<3>)C<4>=O<5>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
},
),
],
'GLN': [
(
'N<0>C<1>(C<2>C<3>C<4>(=O<5>)N<6>)C<7>=O<8>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
6: 0,
7: 0,
8: 0,
},
),
],
'GLU': [
(
'N<0>C<1>(C<2>C<3>C<4>(O<5>)=O<6>)C<7>=O<8>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: -1,
6: 0,
7: 0,
8: 0,
},
),
],
'GLY': [
(
'N<0>C<1>C<2>=O<3>',
{
0: 0,
1: 0,
2: 0,
3: 0,
},
),
],
'HIS': [
(
'N<0>C<1>(C<2>C<3>1-N<4>=C<5>N<6>C<7>=1)C<8>=O<9>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
6: 0,
7: 0,
8: 0,
9: 0,
},
),
],
'HIP': [
(
'N<0>C<1>(C<2>C<3>1-N<4>=C<5>N<6>C<7>=1)C<8>=O<9>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 1,
5: 0,
6: 0,
7: 0,
8: 0,
9: 0,
},
),
],
'HID': [
(
'N<0>C<1>(C<2>C<3>1-N<4>C<5>=N<6>C<7>=1)C<8>=O<9>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
6: 0,
7: 0,
8: 0,
9: 0,
},
),
],
'ILE': [
(
'N<0>C<1>(C<2>(C<3>)C<4>C<5>)C<6>=O<7>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
6: 0,
7: 0,
},
),
],
'LEU': [
(
'N<0>C<1>(C<2>C<3>(C<4>)C<5>)C<6>=O<7>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
6: 0,
7: 0,
},
),
],
'LYS': [
(
'N<0>C<1>(C<2>C<3>C<4>C<5>N<6>)C<7>=O<8>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
6: 1,
7: 0,
8: 0,
},
),
],
'MET': [
(
'N<0>C<1>(C<2>C<3>S<4>C<5>)C<6>=O<7>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
6: 0,
7: 0,
},
),
],
'PHE': [
(
'N<0>C<1>(C<2>C<3>1C<4>=C<5>C<6>=C<7>C<8>=1)C<9>=O<10>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
6: 0,
7: 0,
8: 0,
9: 0,
10: 0,
},
),
],
'PRO': [
(
'N<0>1C<1>C<2>C<3>C<4>1C<5>=O<6>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
6: 0,
},
),
],
'SER': [
(
'N<0>C<1>(C<2>O<3>)C<4>=O<5>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
},
),
],
'THR': [
(
'N<0>C<1>(C<2>(O<3>)C<4>)C<5>=O<6>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
6: 0,
},
),
],
'TRP': [
(
'N<0>C<1>(C<2>C<3>1=C<4>N<5>C<6>=2C<7>=C<8>C<9>=C<10>C<11>1=2)C<12>=O<13>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
6: 0,
7: 0,
8: 0,
9: 0,
10: 0,
11: 0,
12: 0,
13: 0,
},
),
],
'TYR': [
(
'N<0>C<1>(C<2>C<3>1C<4>=C<5>C<6>(O<7>)=C<8>C<9>=1)C<10>=O<11>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
6: 0,
7: 0,
8: 0,
9: 0,
10: 0,
11: 0,
},
),
],
'VAL': [
(
'N<0>C<1>(C<2>(C<3>)C<4>)C<5>=O<6>',
{
0: 0,
1: 0,
2: 0,
3: 0,
4: 0,
5: 0,
6: 0,
},
),
],
'HOH': [
(
'O<0>',
{
0: 0,
},
),
],
'WAT': [
(
'O<0>',
{
0: 0,
},
),
],
'TIP': [
(
'O<0>',
{
0: 0,
},
),
],
}
for alias in (
( 'HIE', 'HIS'), # default HIS is HISE
( 'HISE', 'HIS'),
( 'HISD', 'HID'),
( 'HISP', 'HIP'),
( 'GLUM', 'GLU'), # default -1
( 'ASPM', 'ASP'), # default -1
( 'LYSP', 'LYS'), # default +1
( 'ARGP', 'ARG'), # default +1
):
formal_charge_dict[alias[0]] = formal_charge_dict[alias[1]]