# Partial optimization in Gaussian09

There are several ways to do partial optimization (freeze coordinates) in Gaussian.

• One of them is to add “ModRedundant” to Opt or Geom keyword and to write
``````F1
F2
F3
...``````

after coordinate section. “F” here means freeze, and integer stands for atom number.

``noatoms atoms=1-4``

after Cartesians. This will exclude the first four atoms from optimization. BTW, you definitely should read the section about “ReadOptimize” option if you haven’t before.

• The third one is using a freeze-code. I came across this method in the post at ResearchGate portal. The idea is simple: you add 0 (or nothing) between an atom symbol and its coordinates if the position of the atom should be optimized, and -1 if you want to freeze it.
``````C   0   1.5841970000         -2.9056620000          0.0000300000
C  -1   3.2294750000          0.7041530000          0.0001550000``````

The first atom in the example will be included in the optimization and the second will be frozen.

Just that simple!

And something more: if you restart your optimization from .chk file, freezing will be preserved. Enjoy!

P.S. Also check Dr. Barroso’s post on the topic.

This post was adopted and updated from my old blog.

1. Predrag-Peter ILICH says:

Thank you but that’s not what I would like to do. I want to freeze one particular coordinate, i.e. a dihedral angle; say I want to keep D1 constant during optimization of this hydronium:
B1 0.97026220
B2 0.96964597
B3 0.96000000
A1 120.00000000
A2 120.00000000
D1 -179.37111574

Typing an F after the numerical value for D1 doesn’t do it; the variable still gets optimized (and changed)? Many thanks, Peter

1. Andrii Kyrylchuk says:

I do not use z-matrices often, but as I understand from the Gaussian manual, you can just separate the variables you want to freeze with a blank line. I found an example here:
`# RHF/STO-3G opt=z-mat`

``` title : methanol 0 1 C H 1 R1 H 1 R1 2 A1 H 1 R1 2 A1 3 D1 O 1 R2 2 A1 3 -D1 H 5 R3 1 A2 2 D2 R1 1.083 R2 1.44 A1 109.47122 D1 120.0 R3 0.96 A2 104.48 D2 180.0 ```

```R1, R2, A1 and D1 will be allowed to vary whereas R3, A2 and D2 won't be. ```
As the manual says, you can also separate the frozen variables by the following line:

` Constants:`

Hope this helps.