A simple Molstar-based command-line program to compute molecular surfaces and save in Wavefront (.obj) format.
npm install -g surface-calculatorgit clone https://github.com/PDBeurope/surface-calculator
cd surface-calculator
npm install
npm run buildNOTE: The following examples assume you installed SurfaceCalculator globally with npm install -g surface-calculator.
If you installed locally in the current directory (npm install surface-calculator), use npx surface-calculator instead of surface-calculator.
If you cloned the git repository and built it, use node ./lib/index.js instead of surface-calculator.
surface-calculator --help
surface-calculator --input 1bvy-A 1bvy-B 1bvy-F --output-dir ../outputs/ --quality medium --probe 1.4
surface-calculator --input-file examples/input.txt --output-dir ../outputs/ --quality medium --probe 1.4
# Run on local files:
surface-calculator --input-file examples/input.txt --output-dir ../outputs/ --quality medium --probe 1.4 --source 'file:///wherever/you/have/your/data/{id}.cif'
# {id} will get replaced by the entry ID (e.g. 1bvy)Input can be specified by either --input or --input-file parameter.
This parameter can specify any number of jobs to process. Each job can be either:
{entry_id}to process all polymer chains in the deposited model structure (e.g.1e94){entry_id}-{auth_chain_id}to process one polymer chain in the deposited model structure (e.g.1e94-E){entry_id}_{assembly_id}to process all polymer chains in the specified assembly structure (e.g.1e94_3){entry_id}_{assembly_id}-{auth_chain_id}to process one polymer chain in the specified assembly structure (e.g.1e94_3-E)
This parameter specifies a file from which the list of jobs should be read (one job per line).
Job syntax is exactly the same as for --input parameter.
Lines begining with # are ignored.
See example in examples/input.txt.
Docker image for surface-calculator uses Xvfb to emulate X-server.
docker build . -t surface-calculator
docker build . -t surface-calculator --platform linux/amd64 # if you need it for a different architecture
docker run -v ~/data/output_1bvy:/out surface-calculator --input 1bvy --output-dir /outInternal note: To publish Docker image to EBI container repository, create a git tag following semantic versioning with "v" prefix (e.g. "v1.2.3"). See CICD pipeline for details.