Syntax Examples

This page collects examples of CGsmiles string of increasing complexity. They are seperated into the following categories:

  • CGsmiles without fragments

  • CGsmiles with all-atom fragments

  • CGsmiles with coarse-grained fragments

CGsmiles without fragments

If one just seeks to describe a graph at abitrary level of complexity CGsmiles notation can be used. Each of the smiles listed below can be read and converted using the read_cgsmiles function of the package:

  • simple linear graph with three nodes

    "{[#nodeA][#nodeB][#nodeC]}"
    
  • simple linear graph of 10 nodes of B and three other nodes neighborung it

    "{[#nodeA][#nodeB]|10[#nodeC]}"
    
  • simple ring of six nodes

    "{[#nodeA]1[#nodeB][#nodeC][#nodeD][#nodeE][#nodeD]1}
    
  • rhombic graph with four nodes

    "{[#nodeA]1[#nodeB]2[#nodeC]1[#nodeD]2}
    
  • linear sequence with branch

    "{[#nodeA]([#nodeAB][#nodeAB])[#nodeC][#nodeD]}
    
  • linear sequence with regular branching pattern; this is equivalent to a graft polymer. Note that this results into 5 nodes A connected to each other each with an AB branch of two units.

    "{[#nodeA]([#nodeAB][#nodeAB])|5}"
    

CGsmiles with all-atom fragments

  • simple linear graph describing PEO with two OH end-groups

    "{[#OH][#PEO][#OH]}.{#OH=[$]O,#PEO=[$]COC[$]}"
    
  • same as above but now with 10 residues.

    "{[#OH][#PEO]|10[#OH]}.{#OH=[$]O,#PEO=[$]COC[$]}"
    
  • simple ring describing crwon ether

    "{[#PEO]1[#PEO]|4[#PEO]1}.{#PEO=[$]COC[$]}"
    
  • mPEG acrylate with 5 residues .. code:

    "{[#PMA]([#PEO]|3)|5}.{#PMA=[>]CC[<](C(=O)OC[$]),#PEO=[$]COC[$]}"