#!/usr/bin/env python

import sys

import pathfix
import atoms
import io

def abort():
    print("\n   usage: bulkview infile outfile")
    sys.exit()

p = io.loadposcars(sys.argv[1])
if len(p) == 0:
    p = io.loadcons(sys.argv[1])
if len(p) == 0:
    abort()

try:
    outfile = sys.argv[2]
except:
    abort()

count = 0
for a in p:
    count += 1
    #assumes ortho box, otherwise, need to set brute to True
    cns = atoms.coordination_numbers(a, 3.3, brute=False)
    mc = max(cns)
    print(count, "/", len(p))
    b = atoms.Atoms(0)
    b.box = a.box.copy()
    for i in range(len(a)):
        if cns[i] < mc - 1:
            b.append(a.r[i], a.free[i], a.names[i], a.mass[i])
    if len(b) > 0:
        io.savecon(outfile, b, 'a')
