<p>So on the GUI form of PyMOL on the right hand side you have a list of what is ambiguously called <code>objects</code> in PyMOL (models elsewhere), which can be enabled or disabled by clicking on their name.
The name also has a <code>1/1</code> in green or similar. This indicates the state. In your case you have 2 states.</p>

<p>To split a multistate object use</p>

<pre><code>split_state prot_A
</code></pre>

<p>To combine two objects one uses the command</p>

<pre><code>create new_name, prot_A or prot_B
</code></pre>

<p>Now, this has two caveats which if violated result in a nasty piece of modern art:</p>

<ul>
<li>if the chains, segment ids and residues are the same</li>
<li>if you had two overlapping macromolecules</li>
</ul>

<p>To deal with the first, change the chain id on one of them.</p>

<p>alter prot_B, chain='B'
   sort</p>

<p>Segment identifier is a weird thing that most comp-biochem tools dislike, so I like to remove that</p>

<p>alter prot_B, segi=''
   sort</p>

<p>Now when you go to save your <code>new_name</code> object, in the popup of the GUI you get a dropdown menu defaulted to enabled (visible objects that have not be clicked to be disabled). There you can choose <code>new_name</code>.</p>

<h2>Aligning two</h2>

<p>If someone that is in not the OP author has a template protein and needs to make a dimer of another based on that, the process is the same.</p>

<pre><code>create twin, prot_B
align twin, prot_A and chain B
alter twin, chain='B'
sort
</code></pre>

<h2>SDF files</h2>

<p>If someone else has a multicompound sdf where the state is the header name, I strongly advise not to use <code>split_state</code>. Yes, the python pymol module (not the app) handles states in a really weird way, but states can be selected with <code>state 1</code> selection algebra and <code>state</code> is an argument for most commands that do not accept <code>state</code> selector. </p>

CC BY-SA 4.0
2020-04-17T05:06:14.317Z
2020-04-17T05:06:14.317Z
Matteo Ferla
<p>pdb code: <code>2obt</code></p>

<p>The pdb file has a coordinates of a monomer.</p>

<p>I have used following commands to generate an assembly, or in other words to upload one more biological unit so that the protein would be a dimer:</p>

<pre><code>set assembly, ""
fetch 2obt, asu, async=0

set assembly, "1"
fetch 2obt, assembly1, async=0
</code></pre>

<p>After generating the functional dimer in  pymol under name <code>assembly1</code>, I have an important issue that I cannot save a dimer structure in pdb file with dimer coordinates. Does anybody has an idea how to go around it or is it even possible to do that?</p>

CC BY-SA 4.0
2023-08-27T11:10:39.613Z
can we says that "after uploading the biological unit is not the right wording" ?? --> When loading mmCIF structure files, the assembly setting controls whether PyMOL loads the asymmetric unit (assembly="") or a biological unit (e.g. assembly="1"). Assembly identifiers in mmCIF files can be arbitrary strings, but usually are numeric and most files define at least assembly "1".  I guess the biological unit is created applying same symmetry operator on the asymmetric unit (or am I wrong ??). Ok PymolWiki says loading, actually loads .....
pippo1980
<pymol>
Is there a way to save a full pdb file in PYMOL after uploading biological unit?
# Is there a way to save a full pdb file in PYMOL after uploading biological unit?

(Asked by: username_0 on 2020-04-17)

pdb code: 2obt
The pdb file has a coordinates of a monomer.
I have used following commands to generate an assembly, or in other words to upload one more biological unit so that the protein would be a dimer:
set assembly, ""
fetch 2obt, asu, async=0

set assembly, "1"
fetch 2obt, assembly1, async=0

After generating the functional dimer in  pymol under name assembly1, I have an important issue that I cannot save a dimer structure in pdb file with dimer coordinates. Does anybody has an idea how to go around it or is it even possible to do that?

**Tags:** pymol
> **Comments:**
> **username_1**: can we says that "after uploading the biological unit is not the right wording" ?? --> When loading mmCIF structure files, the assembly setting controls whether PyMOL loads the asymmetric unit (assembly="") or a biological unit (e.g. assembly="1"). Assembly identifiers in mmCIF files can be arbitrary strings, but usually are numeric and most files define at least assembly "1".  I guess the biological unit is created applying same symmetry operator on the asymmetric unit (or am I wrong ??). Ok PymolWiki says loading, actually loads .....  

---

## 1 answers

### Answer by username_2 on 2020-04-17. Score: 4

So on the GUI form of PyMOL on the right hand side you have a list of what is ambiguously called objects in PyMOL (models elsewhere), which can be enabled or disabled by clicking on their name.
The name also has a 1/1 in green or similar. This indicates the state. In your case you have 2 states.
To split a multistate object use
split_state prot_A

To combine two objects one uses the command
create new_name, prot_A or prot_B

Now, this has two caveats which if violated result in a nasty piece of modern art:

if the chains, segment ids and residues are the same
if you had two overlapping macromolecules

To deal with the first, change the chain id on one of them.
alter prot_B, chain='B'
   sort
Segment identifier is a weird thing that most comp-biochem tools dislike, so I like to remove that
alter prot_B, segi=''
   sort
Now when you go to save your new_name object, in the popup of the GUI you get a dropdown menu defaulted to enabled (visible objects that have not be clicked to be disabled). There you can choose new_name.
Aligning two
If someone that is in not the OP author has a template protein and needs to make a dimer of another based on that, the process is the same.
create twin, prot_B
align twin, prot_A and chain B
alter twin, chain='B'
sort

SDF files
If someone else has a multicompound sdf where the state is the header name, I strongly advise not to use split_state. Yes, the python pymol module (not the app) handles states in a really weird way, but states can be selected with state 1 selection algebra and state is an argument for most commands that do not accept state selector.


---

