Periodic Boundary Conditions

Consider the following atoms object.
atoms_al = ase.build.fcc111('Al', size=(1,2,2), vacuum=16.0, orthogonal=True)
To set the periodic boundary conditions along the x-direction I use:
atoms_al.pbc=np.array([1,0,0],dtype=bool)
I am trying to understand what exactly changes in the atoms_al object once the periodic boundary conditions are applied? Will some attributes of the atoms_al object change once the pbc are applied?
If so, what can they be for example?

I have looked up the source code to find what atoms.pbc does to the atoms object but I did not have any luck. If you could please point me to where I can see the implementation, that would be very helpful.

Hi pxb,

The fcc111 surface returned by fcc111() is periodic in x and y, and not in z. You don’t need to change pbc. If you do modify it, please note that it ceases to be an fcc111 surface.

Will some attributes of the atoms_al object change once the pbc are applied?

When you change pbc, the only attribute that changes is pbc.

However PBC affects how distances are calculated with minimum-image-convention. With pbc (1, 0, 0) you will have atoms that sit right on a non-periodic boundary along y, i.e., the configuration is not physically meaningful.