https://github.com/epiqc/ScaffCC
Revision 7bec85fe39c61f72472dc5a39942441993a8d0b6 authored by Yipeng Huang on 04 July 2018, 21:34:12 UTC, committed by Yipeng Huang on 04 July 2018, 21:34:12 UTC
Both Scaffold and QX simulator have the input convention of control, control, target
1 parent f74102b
Tip revision: 7bec85fe39c61f72472dc5a39942441993a8d0b6 authored by Yipeng Huang on 04 July 2018, 21:34:12 UTC
Fixing CNOT and Toffoli input ordering for the script that generates QX simulator inputs.
Fixing CNOT and Toffoli input ordering for the script that generates QX simulator inputs.
Tip revision: 7bec85f
rkqc
#!/bin/bash
ROOT=$(dirname $0)
LOC=${PWD}
name=${1%.cpp}
filename="$name.cpp"
echo "Compiling $name"
cp *cpp $ROOT/src/examples
cd $ROOT/src/examples
rm CMakeLists.txt
cat CMAKE_HEADER > CMakeLists.txt
echo "add_test( $name revkit_core boost_system boost_filesystem boost_regex boost_signals )" >> CMakeLists.txt
cd ../../scripts/
echo "Building RKQC"
python ../make.py build -DBUILD_UNSTABLE=ON -DBUILD_EXAMPLES=ON -DBUILD_BINDINGS=OFF > messages.log;
grep -i "Error" messages.log;
echo "Done."
cd ../
echo "Running $name"
build/examples/$name
echo "Cleaning Output"
qasm="$name.qasm"
if [ -f workers.txt ]; then
cat workers.txt > $qasm
rm workers.txt
fi
if [ -f ancilla_0g.txt ]; then
cat ancilla_0g.txt >> $qasm
rm ancilla_0g.txt
fi
if [ -f ancilla_00.txt ]; then
cat ancilla_00.txt >> $qasm
rm ancilla_00.txt
fi
if [ -f ancilla_1g.txt ]; then
cat ancilla_1g.txt >> $qasm
rm ancilla_1g.txt
fi
if [ -f ancilla_11.txt ]; then
cat ancilla_11.txt >> $qasm
rm ancilla_11.txt
fi
if [ -f gates.txt ]; then
cat gates.txt >> $qasm
rm gates.txt
fi
cd $ROOT
cd ../
mv rkqc/rkqc.qasm $LOC
Computing file changes ...