Select oe_cansmiles('CNC(=O)Cc1ccccc1CC(=O)NC'); CNC(=O)Cc1ccccc1 in 34.659 ms
Update structure Set cansmiles = oe_cansmiles(smiles); 237,595 in 61,681.405 ms
Select oe_impsmiles('CN(*)C(=O)Cc1ccccc1'); [CH3]N(*)C(=O)[CH2]c1[cH][cH][cH][cH][cH]1 in 34.577 ms
Select count(smiles) from structure where oe_matches(smiles, 'cCC(=O)NC'); 1616 smiles in 11,458.366 ms
Select smiles from structure where oe_matches('c1ccccc1CC(=O)NC', smiles); 23 smiles in 60,287.117 ms
Select smiles from structure where oe_count_matches(smiles, 'cCC(=O)NC') > 5; 5 smiles in 12,040.873 ms
Select smiles from structure,tox_smarts where oe_matches(smiles, smarts);
Update structure Set HBdonors = oe_count_matches(smiles, '[!#6!H0]');
CREATE OR REPLACE FUNCTION tpsa(character varying) RETURNS real AS '
Declare
smiles Alias For $1;
tpsa real := 0.0;
Begin
/*
For description of the methodology see :
P. Ertl, B. Rohde, P. Selzer
Fast Calculation of Molecular Polar Surface Area as a Sum of Fragment-based
Contributions and Its Application to the Prediction of Drug Transport
Properties, J.Med.Chem. 43, 3714-3717, 2000
*/
tpsa := 23.79 * oe_count_matches(smiles, ''[N+0;H0;D1;v3]#'')
+ 23.86 * oe_count_matches(smiles, ''[N+0;H1;D1;v3]='')
+ 26.02 * oe_count_matches(smiles, ''[N+0;H2;D1;v3]-'')
+ ... ;
Return tpsa;
End;
' LANGUAGE plpgsql;