# Set minimal log verbosity
setVerbosity(MinimalLog)

# %% Copper_Hydrogen

# Set up lattice
vector_a = [14.45984, 0.0, 0.0]*Angstrom
vector_b = [0.0, 14.45984, 0.0]*Angstrom
vector_c = [0.0, 0.0, 14.45984]*Angstrom
lattice = UnitCell(vector_a, vector_b, vector_c)

# Define elements
elements = [Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Copper, Copper, Copper, Copper, Copper, Copper, Copper, Copper,
            Hydrogen]

# Define coordinates
fractional_coordinates = [[-0.000042654769,  0.000127477445,  0.000030028663],
                          [-0.000100822353, -0.000022713401,  0.249845444146],
                          [ 0.000041461119, -0.000200371119,  0.499903441763],
                          [ 0.000085358314, -0.000053490558,  0.750106370007],
                          [ 0.00007551707 ,  0.249974681348, -0.000201890057],
                          [ 0.000046271849,  0.250078466383,  0.249855230811],
                          [-0.00000538891 ,  0.249921347952,  0.499990137564],
                          [ 0.000010958309,  0.249842691294,  0.750061967354],
                          [-0.000160363637,  0.499977788665, -0.000238872702],
                          [-0.000099866265,  0.499984234451,  0.249767441298],
                          [-0.000104080849,  0.500133569129,  0.500055524446],
                          [-0.000086911482,  0.500089590687,  0.750168820788],
                          [-0.00027402157 ,  0.750202643301, -0.00001642029 ],
                          [-0.000236175208,  0.750006291727,  0.249826649834],
                          [-0.000051644555,  0.750106624175,  0.499970111488],
                          [-0.00004632484 ,  0.750249391779,  0.75014291577 ],
                          [ 0.250174444383, -0.000204603343, -0.000134421419],
                          [ 0.24997761557 , -0.000162108064,  0.24984918576 ],
                          [ 0.249876997539, -0.000221742981,  0.499812852317],
                          [ 0.250083502543, -0.000237681858,  0.750026124673],
                          [ 0.250074257968,  0.249904454795, -0.000154127162],
                          [ 0.24945993756 ,  0.249516430987,  0.249351524267],
                          [ 0.249357212463,  0.249488056611,  0.500561960122],
                          [ 0.249949306853,  0.249854535179,  0.749955376147],
                          [ 0.250011061468,  0.500167630433, -0.000132173504],
                          [ 0.249459251441,  0.500767219075,  0.249314490804],
                          [ 0.249321612858,  0.500735703786,  0.500608158376],
                          [ 0.249823513889,  0.500160587445,  0.75011875861 ],
                          [ 0.250052883944,  0.750216473852, -0.000093287862],
                          [ 0.249978387138,  0.749954812416,  0.249746327894],
                          [ 0.249958499351,  0.749945054351,  0.499982986722],
                          [ 0.249987559793,  0.750119383169,  0.750251521004],
                          [ 0.50012036781 , -0.0001919754  , -0.000198304617],
                          [ 0.500103559892, -0.000112205463,  0.249934654823],
                          [ 0.500019091037, -0.000187698847,  0.499946491654],
                          [ 0.499999883823, -0.000200167058,  0.749928635444],
                          [ 0.499957169414,  0.249972874669, -0.000172678118],
                          [ 0.500492516958,  0.249361335225,  0.249408491041],
                          [ 0.500541864053,  0.249372371016,  0.500563604932],
                          [ 0.500053052962,  0.249905670801,  0.74991637881 ],
                          [ 0.500077219599,  0.500029516273, -0.000138764656],
                          [ 0.500712463127,  0.500685170668,  0.249442681586],
                          [ 0.500697970901,  0.500635992837,  0.500719483319],
                          [ 0.500126311735,  0.500020555412,  0.750036439257],
                          [ 0.500389060442,  0.750090533634, -0.000159708147],
                          [ 0.500321974607,  0.750033023708,  0.249923126748],
                          [ 0.500110055503,  0.750010225102,  0.500095982016],
                          [ 0.50016124489 ,  0.749991432552,  0.750121994148],
                          [ 0.749990281996,  0.000200376515, -0.000051430352],
                          [ 0.750197107722,  0.000043220047,  0.249984111557],
                          [ 0.750227227591, -0.000137005314,  0.499990369735],
                          [ 0.75006318056 ,  0.000037343757,  0.750034408955],
                          [ 0.750034676156,  0.250021375508, -0.000175555767],
                          [ 0.75003750715 ,  0.24999648025 ,  0.249952456507],
                          [ 0.750185247268,  0.249846632879,  0.50000131289 ],
                          [ 0.750173575821,  0.249820299241,  0.750020477526],
                          [ 0.750151433128,  0.499853126214, -0.000285552784],
                          [ 0.750017565522,  0.499918880147,  0.249940868301],
                          [ 0.750148962886,  0.500049203852,  0.500118855562],
                          [ 0.750243527134,  0.499941888193,  0.750060972834],
                          [ 0.75015660727 ,  0.750097827262, -0.000102337351],
                          [ 0.750246086687,  0.750122872092,  0.250014777788],
                          [ 0.750223684542,  0.75022855851 ,  0.500084481219],
                          [ 0.750175588701,  0.750189066363,  0.750030191807],
                          [ 0.125085373663,  0.124857327319, -0.000193415089],
                          [ 0.124675780579,  0.124668672138,  0.249643049736],
                          [ 0.124615189147,  0.124530064323,  0.500124770753],
                          [ 0.125033600451,  0.124751845611,  0.750098429304],
                          [ 0.125060976754,  0.37501397608 , -0.000172674576],
                          [ 0.124798088873,  0.375143218095,  0.249512962967],
                          [ 0.124657277951,  0.375131551495,  0.500400418761],
                          [ 0.12487314015 ,  0.375009375862,  0.75007568971 ],
                          [ 0.124776173882,  0.625255108782, -0.000184083445],
                          [ 0.124488676993,  0.625398313188,  0.2495057632  ],
                          [ 0.124538376589,  0.625454168777,  0.500263977972],
                          [ 0.124805942636,  0.625293199987,  0.750346853893],
                          [ 0.124952440695,  0.875112632677,  0.00003500071 ],
                          [ 0.124905481603,  0.874883055573,  0.24981356675 ],
                          [ 0.125022650625,  0.874865793604,  0.499870732001],
                          [ 0.125024585292,  0.875004178314,  0.75015909854 ],
                          [ 0.37507849204 ,  0.124823425584, -0.000148825768],
                          [ 0.374971689057,  0.12466470478 ,  0.24954994222 ],
                          [ 0.374924918051,  0.124638803918,  0.500225628108],
                          [ 0.375035622234,  0.124824930483,  0.749819467095],
                          [ 0.374978127541,  0.375033101835, -0.000725312005],
                          [ 0.375051870013,  0.375120198749,  0.24727572538 ],
                          [ 0.374958873236,  0.375143141834,  0.502772683482],
                          [ 0.374931038767,  0.375024466838,  0.750508065643],
                          [ 0.375174056933,  0.6251648     , -0.000106428722],
                          [ 0.375174562685,  0.62535656345 ,  0.249524927139],
                          [ 0.375043657685,  0.625271961477,  0.500424516815],
                          [ 0.375035304959,  0.625068112229,  0.750167572618],
                          [ 0.375241896487,  0.874908343305, -0.000085662842],
                          [ 0.375123569262,  0.874856017225,  0.249767450723],
                          [ 0.37494655516 ,  0.874840553048,  0.500008199295],
                          [ 0.375062696583,  0.874848695511,  0.749969205088],
                          [ 0.62498382801 ,  0.124963455813, -0.000208185165],
                          [ 0.625389615812,  0.124633627217,  0.24973469628 ],
                          [ 0.625429827584,  0.124514955847,  0.500204241929],
                          [ 0.625068095136,  0.124858833132,  0.750051601923],
                          [ 0.625011311877,  0.374957603771, -0.000168249795],
                          [ 0.625156030785,  0.374947427444,  0.249638110084],
                          [ 0.625363103577,  0.374932942807,  0.500460229393],
                          [ 0.625166518536,  0.374880376907,  0.749984310018],
                          [ 0.625363474382,  0.625014602982, -0.000249007023],
                          [ 0.625614318259,  0.625404477682,  0.24976578815 ],
                          [ 0.625575696848,  0.625469131105,  0.500381886304],
                          [ 0.625280825572,  0.625076134292,  0.750167099544],
                          [ 0.625235172152,  0.875077629801, -0.000069577816],
                          [ 0.625223499383,  0.875061810049,  0.250016318178],
                          [ 0.625108445651,  0.875008247522,  0.500049813076],
                          [ 0.625090601717,  0.875022576718,  0.749993312688],
                          [ 0.875022035531,  0.125178327426, -0.00004743013 ],
                          [ 0.875065029361,  0.125128785588,  0.249917474353],
                          [ 0.875170958941,  0.12484814448 ,  0.499943865873],
                          [ 0.875081934307,  0.124893404657,  0.750028162779],
                          [ 0.875014134275,  0.374876361054, -0.000184213362],
                          [ 0.874991371213,  0.374987666218,  0.249793307098],
                          [ 0.87506032625 ,  0.374996727506,  0.500130890894],
                          [ 0.87512223812 ,  0.374866745966,  0.749960532337],
                          [ 0.874916447002,  0.624992899753, -0.000170050059],
                          [ 0.874940154811,  0.624883375371,  0.24988450552 ],
                          [ 0.875025785983,  0.625103781673,  0.500065843211],
                          [ 0.875080298693,  0.625162113941,  0.750023095232],
                          [ 0.874891361665,  0.875241650412,  0.000013624652],
                          [ 0.875033144171,  0.875069988989,  0.24996194549 ],
                          [ 0.875147907189,  0.875038866077,  0.499954065779],
                          [ 0.875078022852,  0.875214631702,  0.750094759824],
                          [ 0.124938160227, -0.000148193345,  0.124874811218],
                          [ 0.124910134174, -0.000175016588,  0.374772206381],
                          [ 0.12498238293 , -0.000287842535,  0.6250394366  ],
                          [ 0.125113578915, -0.000067163833,  0.875058773411],
                          [ 0.124783606948,  0.24980261767 ,  0.124503388388],
                          [ 0.124780956186,  0.249743344467,  0.374955869256],
                          [ 0.124610233499,  0.249679275706,  0.62535962593 ],
                          [ 0.125110166002,  0.249855249663,  0.874931960738],
                          [ 0.124590346341,  0.500341578863,  0.124396593332],
                          [ 0.124639099945,  0.500477186719,  0.374908384737],
                          [ 0.124472531142,  0.500411745702,  0.625516122675],
                          [ 0.124941673359,  0.500143393536,  0.875053126451],
                          [ 0.124756538052,  0.750169070384,  0.124767823964],
                          [ 0.124862000761,  0.749941575612,  0.374830385137],
                          [ 0.124939027205,  0.750190920012,  0.625157442054],
                          [ 0.124870670721,  0.750242281039,  0.875191454243],
                          [ 0.375120925386, -0.000226941753,  0.124865954895],
                          [ 0.374956911226, -0.000753448681,  0.374879817354],
                          [ 0.374957456643, -0.000228507578,  0.624883434826],
                          [ 0.375143901153, -0.000148290676,  0.874856708836],
                          [ 0.374981275205,  0.249631182607,  0.124659513676],
                          [ 0.374934898359,  0.247309629521,  0.374985444827],
                          [ 0.374940703818,  0.249631014697,  0.625167351593],
                          [ 0.375020425229,  0.249829021145,  0.874814014231],
                          [ 0.375112562446,  0.500520765949,  0.124686630944],
                          [ 0.375093283296,  0.502850693056,  0.375030077793],
                          [ 0.374955417472,  0.500453303132,  0.625345538323],
                          [ 0.374962518909,  0.500168797015,  0.87494260673 ],
                          [ 0.375251557907,  0.75008144948 ,  0.124801811061],
                          [ 0.375097177776,  0.750499249239,  0.374902510123],
                          [ 0.375014545387,  0.749958602484,  0.625136473189],
                          [ 0.375202984802,  0.749967098646,  0.875026312714],
                          [ 0.625164074507, -0.000057219784,  0.124916315139],
                          [ 0.625172615552, -0.000087031182,  0.374999430283],
                          [ 0.625105632772, -0.000187903771,  0.625046530638],
                          [ 0.624986023691,  0.000001800147,  0.874907324196],
                          [ 0.625264746497,  0.24973550974 ,  0.124567029336],
                          [ 0.625245702439,  0.249582636376,  0.375030166276],
                          [ 0.625480199803,  0.249612962104,  0.625316428884],
                          [ 0.624968737008,  0.249956233613,  0.87491009863 ],
                          [ 0.62544907111 ,  0.500201048169,  0.12452686674 ],
                          [ 0.625366496227,  0.500359648626,  0.375112969558],
                          [ 0.625580714477,  0.500224326882,  0.625475493155],
                          [ 0.625141494426,  0.49990821129 ,  0.874907453779],
                          [ 0.625433710625,  0.75016414503 ,  0.124894084128],
                          [ 0.625237773073,  0.750121134093,  0.37507026177 ],
                          [ 0.625216868881,  0.750205070296,  0.625152517444],
                          [ 0.625260641352,  0.750042789141,  0.874954774691],
                          [ 0.874977598946,  0.000202256186,  0.124938665634],
                          [ 0.875121560299, -0.000009159385,  0.374912074268],
                          [ 0.875148950392, -0.000059574216,  0.625014059522],
                          [ 0.875000256465,  0.000178420832,  0.875086131425],
                          [ 0.8750372445  ,  0.250085305845,  0.124911608946],
                          [ 0.875096211073,  0.249891071757,  0.374944946806],
                          [ 0.875122621235,  0.249807778701,  0.624967887402],
                          [ 0.875094093309,  0.249923171693,  0.874916154192],
                          [ 0.874928583496,  0.499856418317,  0.124793470759],
                          [ 0.874976240703,  0.500115157396,  0.374967539929],
                          [ 0.875066016559,  0.500065685104,  0.625073166779],
                          [ 0.875059721298,  0.499898979669,  0.874861536186],
                          [ 0.874893773801,  0.750060925663,  0.124929433115],
                          [ 0.875060634034,  0.750005363267,  0.37496162922 ],
                          [ 0.875091558997,  0.750223036599,  0.625056047894],
                          [ 0.874963398915,  0.750231766111,  0.874991315053],
                          [-0.000038209164,  0.125065147536,  0.124853143624],
                          [ 0.000025979917,  0.124956661386,  0.374868599974],
                          [-0.000008062411,  0.124769222329,  0.625063522755],
                          [ 0.000083166744,  0.124939764837,  0.874999818412],
                          [ 0.000001366283,  0.374990037191,  0.124733833618],
                          [-0.000611681898,  0.375061182318,  0.374951586706],
                          [-0.000071343902,  0.374989666849,  0.625087636125],
                          [ 0.000084771584,  0.374919336703,  0.874951465691],
                          [-0.000333836222,  0.625041066028,  0.124716154863],
                          [-0.000145688515,  0.625045007574,  0.374896954688],
                          [-0.000146148532,  0.625254301778,  0.625164006638],
                          [-0.000166828966,  0.625197568289,  0.875042262952],
                          [-0.000180362674,  0.875091054363,  0.124948276269],
                          [ 0.000009030798,  0.874929490948,  0.374846422223],
                          [ 0.000074354604,  0.875025572924,  0.625029414759],
                          [-0.000067471987,  0.875209495736,  0.875149908397],
                          [ 0.249820964862,  0.124518875666,  0.124540038097],
                          [ 0.249589067142,  0.124720338311,  0.374882056571],
                          [ 0.249731728066,  0.124461946792,  0.625225562552],
                          [ 0.250172656899,  0.124840378925,  0.874900809763],
                          [ 0.249740917169,  0.375152502822,  0.124656841637],
                          [ 0.247250876157,  0.375196662498,  0.375000696538],
                          [ 0.24950600014 ,  0.375099096616,  0.625295154771],
                          [ 0.249853190055,  0.374996981343,  0.87489174657 ],
                          [ 0.249767813035,  0.625517184692,  0.124429493958],
                          [ 0.2496151118  ,  0.625291474464,  0.374888251896],
                          [ 0.249659421923,  0.625469123756,  0.625536633106],
                          [ 0.249964117452,  0.625196485458,  0.875117118167],
                          [ 0.25004297244 ,  0.874942370672,  0.12491825152 ],
                          [ 0.249852881024,  0.87478162066 ,  0.374780795755],
                          [ 0.249987174564,  0.874888290499,  0.624975352804],
                          [ 0.250142466668,  0.874973610102,  0.875045616325],
                          [ 0.50022763044 ,  0.124541989795,  0.124525807847],
                          [ 0.500333224421,  0.124644529569,  0.374957883151],
                          [ 0.500242621911,  0.124509187033,  0.625235018101],
                          [ 0.499964395485,  0.124930447532,  0.874858454429],
                          [ 0.500307136278,  0.375022244482,  0.124685314878],
                          [ 0.502744904335,  0.375033514596,  0.375094472168],
                          [ 0.50040826206 ,  0.374990856298,  0.625269379441],
                          [ 0.50009537795 ,  0.375000655466,  0.874858062814],
                          [ 0.500568940446,  0.625457943335,  0.124507263853],
                          [ 0.500568201096,  0.625311879796,  0.375067134569],
                          [ 0.500390152213,  0.625376627812,  0.625488635504],
                          [ 0.500219311109,  0.624948994978,  0.875011139041],
                          [ 0.50029958393 ,  0.874957212325,  0.124951459842],
                          [ 0.500214486706,  0.874932241077,  0.374965165694],
                          [ 0.500013230378,  0.87488359426 ,  0.624971772795],
                          [ 0.500165079493,  0.874906662244,  0.874904835553],
                          [ 0.750107879119,  0.125093797284,  0.124870092714],
                          [ 0.750151944344,  0.124930258998,  0.374982482428],
                          [ 0.750227788903,  0.124792272444,  0.625018629881],
                          [ 0.749995244741,  0.12504139679 ,  0.874987993805],
                          [ 0.749967085544,  0.374934144612,  0.124853217448],
                          [ 0.750610314765,  0.374954621106,  0.375033793519],
                          [ 0.750225587107,  0.374869447127,  0.625076167974],
                          [ 0.750074632383,  0.374853578992,  0.87485478692 ],
                          [ 0.750229952908,  0.62498235755 ,  0.124829289559],
                          [ 0.750147141954,  0.625102133903,  0.375062216112],
                          [ 0.750259329466,  0.625196386028,  0.625164114591],
                          [ 0.750205771092,  0.625012474335,  0.874874827425],
                          [ 0.750147706008,  0.87516786997 ,  0.124984419917],
                          [ 0.75017459893 ,  0.875051369964,  0.375009503232],
                          [ 0.750164403044,  0.875124164691,  0.625061964824],
                          [ 0.750051097792,  0.875199479319,  0.874985918367],
                          [ 0.375016149188,  0.374999804305,  0.374969873983]]

# Define velocities
velocities = [[ 2.333083155295e-04, -5.690776746564e-04, -9.303227212720e-04],
              [-2.861245837659e-03,  1.876406938674e-03, -1.479922675832e-04],
              [-3.889525210629e-04, -8.101058045890e-04, -3.039586669708e-03],
              [-3.261098042843e-04, -4.006928525090e-03,  9.800308385184e-04],
              [-1.514710361538e-03,  1.293216261189e-03, -4.008300845052e-03],
              [ 7.645322559403e-05, -5.324241227598e-04, -4.700710916902e-05],
              [-1.275971885305e-03, -4.366034265930e-03, -2.238023855475e-03],
              [ 2.261297929302e-03, -8.213594890532e-04, -3.452986238380e-03],
              [ 2.304033710064e-06, -3.536883365593e-03,  1.486793261587e-03],
              [-5.116847488879e-04, -6.259540090526e-04,  1.715618920112e-05],
              [-1.849093878063e-03, -1.447104584979e-03,  3.270949974204e-03],
              [-1.360593347237e-03,  1.924968702844e-04, -6.063987360988e-05],
              [-9.768684849326e-04,  1.282388140005e-03,  2.568724490887e-04],
              [-3.543092205641e-04,  2.378020295965e-03, -3.509305916741e-03],
              [ 2.603686987708e-04, -8.988826774281e-04, -2.275215819726e-03],
              [-4.903865135575e-04, -6.727027059513e-04,  1.374755715333e-03],
              [-1.037984885727e-03,  3.998192319587e-04, -1.476713923142e-04],
              [-1.455824013606e-03, -1.160903226905e-03,  8.262137599833e-04],
              [ 4.880740468774e-05,  2.700969779301e-03,  1.988031906784e-03],
              [ 1.244625849105e-03, -2.218952696301e-04, -1.527445656331e-03],
              [ 3.576729274711e-04,  1.315484190681e-03,  3.006904216270e-03],
              [-8.344655510475e-05, -1.171891973367e-03,  3.993497876856e-04],
              [ 2.625713739935e-04, -1.346479870664e-03,  1.944686654254e-03],
              [-7.101110498459e-04, -3.506340782801e-03,  1.227220129378e-03],
              [-1.850460880316e-03, -3.966347774773e-03, -1.309746023206e-03],
              [ 2.560078087040e-03, -2.244775412486e-04, -2.543773310773e-03],
              [ 3.961331225897e-03,  3.505382114747e-03,  7.141568451192e-04],
              [ 9.394100898206e-04, -1.797282901531e-04,  1.913480696509e-03],
              [-1.582228319996e-03, -4.439286771328e-05,  3.277179079558e-03],
              [-1.051354638471e-03,  1.381558450638e-03,  1.741931895882e-04],
              [-1.417946998239e-03,  6.719933057121e-04, -2.166490553533e-03],
              [ 1.014693775532e-03, -2.158532273289e-03, -2.806271505422e-03],
              [ 5.401278229015e-03,  2.545185541268e-03, -1.522099755664e-03],
              [ 2.193098695441e-03, -1.629530986928e-03,  7.213386051921e-04],
              [-1.117643885428e-03, -4.946376224768e-04, -1.545445814494e-03],
              [ 1.694816507796e-03,  2.719596739114e-03, -4.109791130416e-04],
              [ 1.601612722965e-03, -7.152667560839e-04,  1.679813957152e-03],
              [ 2.158861850237e-03,  1.416791921567e-03, -1.499045317248e-03],
              [-1.622660855584e-03, -3.911581482478e-03, -1.815175016911e-03],
              [ 1.677316767201e-03, -6.106431699431e-04,  4.580598938157e-03],
              [-2.102997306575e-03, -2.522047240322e-04,  1.432133947839e-03],
              [-2.741815915889e-03,  2.808908988229e-03, -2.062735660966e-04],
              [-2.591995047038e-03,  5.351798208507e-05, -1.977226821051e-04],
              [ 2.167964433768e-03, -1.325132450024e-03, -1.860492868791e-03],
              [-1.108336992441e-03, -1.717077060168e-04, -9.871655757637e-04],
              [-2.228515895577e-03, -1.959628977377e-04, -1.209093761538e-03],
              [-3.546281271442e-04,  1.062010723310e-03,  1.696415732479e-03],
              [-2.438340069310e-05,  2.096427209648e-03, -3.234018765960e-03],
              [-1.724472426832e-03, -9.882057309470e-04,  1.637581465247e-03],
              [ 4.648592204265e-04,  2.607112095381e-03, -2.614032571895e-03],
              [-2.646926240419e-03,  2.738323511423e-03, -1.394115719760e-03],
              [-2.000332773404e-03, -1.007621969210e-03,  9.960604438190e-04],
              [ 1.316414211268e-03, -2.370396544057e-03,  1.278867813453e-03],
              [ 2.645495186000e-03,  1.428960464415e-04, -4.922251329471e-04],
              [ 2.507058506217e-03, -1.246964897848e-04,  1.746831227226e-03],
              [-1.495755905779e-03, -1.951385242889e-03,  2.749261901622e-04],
              [ 1.181493774316e-03, -2.815960471875e-04, -2.138698121171e-03],
              [-2.030543764281e-03,  2.412662676530e-04, -8.003104419825e-04],
              [ 8.486446278899e-04, -3.355927516648e-03, -2.310906603051e-03],
              [ 6.752814473597e-04,  2.826498085128e-03,  2.062767026903e-03],
              [ 1.784351697878e-04, -6.670714769797e-05, -3.516390979036e-04],
              [ 2.790186959398e-03,  9.778798776119e-04,  1.454391560416e-04],
              [ 3.897203031273e-03,  3.780885475372e-03,  2.675817437020e-04],
              [-9.298244980525e-04,  7.165051927752e-04, -2.215546323204e-03],
              [-6.763351954517e-04, -1.272712441217e-03, -1.376486503995e-03],
              [-1.451213573526e-03,  1.779148389583e-03, -1.475956681527e-04],
              [-2.729786298425e-03, -4.228778083440e-04,  7.665014559895e-04],
              [ 3.808375121751e-03, -4.648439922953e-04, -9.830130127667e-04],
              [ 1.844743091446e-03,  4.949317558186e-04,  1.683186527843e-03],
              [-6.513513340083e-04, -6.916565808971e-04, -1.752408687354e-03],
              [-1.924601307981e-03,  1.662248031140e-03,  4.026913712456e-03],
              [-4.868302348042e-04,  2.117584627419e-04, -1.015478725778e-04],
              [ 4.250014004914e-04,  3.286563876774e-03, -1.813511303038e-03],
              [-3.832406268355e-04, -2.099804834731e-03,  7.220220830513e-04],
              [-1.492904735625e-03,  5.851305813534e-04,  2.144216581557e-03],
              [-5.544991059040e-04,  1.671962578341e-04, -2.848554683655e-03],
              [-7.255899664448e-04, -1.324067133672e-03,  1.663520329832e-03],
              [-1.162056416524e-03,  3.507973114531e-03, -3.794967951539e-03],
              [-1.178870517824e-04, -1.409159871706e-03,  3.103644614106e-03],
              [-2.023382868481e-03, -1.778051676282e-03,  2.915193793134e-04],
              [ 1.117053660075e-03,  1.060098706932e-03,  2.629864655571e-04],
              [-3.102321599186e-03,  2.252071028848e-03, -1.980892663917e-03],
              [-9.656293268664e-04, -3.315591372064e-04, -2.151783966371e-03],
              [-2.872683024945e-05,  2.337242836069e-03,  2.462939959415e-03],
              [ 4.648995008581e-04, -1.508204846424e-04, -1.406208720733e-04],
              [-1.181347257552e-03, -2.382121367610e-03, -4.140169030852e-04],
              [ 4.054080437335e-03, -9.974162761661e-04,  4.311794638337e-04],
              [ 6.866717953838e-04, -2.395552066657e-03, -5.366657001590e-04],
              [-3.229854692016e-04, -6.135954264787e-04,  1.561528453922e-03],
              [-7.302043879341e-04, -3.376650024597e-03,  9.508294761329e-04],
              [-1.994215394344e-03,  5.718936908033e-03, -1.516678766793e-03],
              [-7.726308034019e-04, -2.305018780178e-03, -1.843505713167e-04],
              [-2.545519659389e-03,  1.830681286430e-03,  2.023737873664e-03],
              [-8.816675274437e-04,  1.223936962488e-03,  6.097708108640e-04],
              [-2.748277193829e-04, -1.148268609255e-03, -6.584761310256e-04],
              [-3.217528501570e-03, -1.605361101050e-03, -7.164817401624e-04],
              [-1.630430494170e-03, -2.813471225487e-04, -1.662402652081e-03],
              [-1.282172823410e-03,  1.307028734461e-03, -1.240862595319e-03],
              [ 2.201797756337e-03, -2.757643849129e-03, -2.710492104561e-03],
              [ 2.628599738649e-03, -2.098002011604e-03, -1.188135638502e-03],
              [-3.620340095218e-03,  1.543363878931e-03, -7.062103642440e-04],
              [ 7.654843176909e-04,  1.503785800960e-03,  1.335667421306e-03],
              [-1.308582915544e-03, -2.874500649129e-03,  3.410106026817e-03],
              [-2.228892378464e-03,  3.951595400033e-03,  1.796055363369e-03],
              [-2.915544327186e-04,  1.609915145457e-03,  5.671298565508e-04],
              [-1.305882280240e-03, -1.623031993094e-03,  1.836488838639e-03],
              [-1.539650310593e-03,  3.032960005008e-03,  2.427056804088e-03],
              [-7.945494385470e-04,  3.593007733998e-03,  9.117917515954e-04],
              [-2.055896183276e-03, -4.132592951230e-03,  1.742843590792e-03],
              [-1.170726788183e-03, -7.736545434011e-04, -1.564867591732e-03],
              [ 2.713757155970e-03, -1.864528871422e-03,  3.549677578982e-03],
              [ 7.503024910690e-04, -2.726903105004e-03,  3.378009086091e-03],
              [ 2.264217482026e-03,  2.811763667030e-03, -2.467129667991e-04],
              [ 1.834172522042e-04,  1.287275422538e-03,  2.171468037189e-03],
              [ 3.109225594458e-03, -3.185960651141e-03, -6.661946027224e-04],
              [-3.863218870498e-03, -1.917230503111e-03,  2.469663605741e-03],
              [-2.775299318958e-03,  2.967409750432e-04,  1.463277630146e-03],
              [ 6.648983374189e-04,  5.347515007383e-04, -3.781933359237e-03],
              [-1.386448707402e-03,  1.034689724625e-03, -1.137207471707e-03],
              [ 3.332488115833e-03, -4.375415714206e-04,  2.774797302794e-04],
              [-1.101736703543e-03, -1.489602814917e-03, -3.535978979853e-03],
              [-7.832721225695e-04,  1.019097018041e-03, -3.987260653995e-03],
              [ 5.263371644697e-04, -5.048050304752e-04,  2.323092578124e-03],
              [ 1.524368440321e-03,  2.115373008504e-03, -2.203057443537e-03],
              [-3.073088327919e-03, -2.724958854307e-03,  2.863830476031e-03],
              [-1.445320217626e-05,  2.673672722501e-03,  8.051071011699e-04],
              [ 6.586752706234e-04, -1.673260444929e-03,  1.702194885740e-03],
              [ 2.094313391554e-03, -1.682424681410e-03,  2.021500998559e-04],
              [ 1.124691236844e-03,  2.845212436374e-04,  1.407607809568e-03],
              [ 1.780348231899e-03, -4.904612544630e-05,  3.198622307677e-04],
              [ 1.490702956797e-03, -4.261394009973e-04,  3.430233640750e-03],
              [ 1.539899731510e-03, -1.401704747677e-03,  1.019579922991e-04],
              [ 1.729988534990e-03,  3.745930693715e-03, -3.846578202367e-03],
              [ 3.009704968092e-03, -2.544806397646e-03, -2.736927695272e-04],
              [ 9.413926949040e-04,  6.830167211992e-04,  2.215784041950e-03],
              [ 1.285130590169e-03,  1.447797569780e-03, -3.172253651939e-03],
              [-9.267015705916e-05, -5.676526904772e-04, -2.005030152879e-03],
              [-1.338571944887e-04,  8.587596400663e-04, -2.557195878807e-03],
              [ 7.812802843748e-04, -1.998866725196e-03, -4.837969273055e-04],
              [-3.058889830994e-03, -3.160477454899e-04,  2.363424846198e-03],
              [ 2.025352249726e-04,  4.230302024351e-03,  3.276276096495e-03],
              [-2.314892336904e-03,  1.977523292740e-03, -6.319793176027e-04],
              [-3.410972240739e-04, -8.517408806163e-04, -5.527135859787e-04],
              [ 1.314485985161e-03,  7.398719262351e-04,  3.854039843324e-04],
              [-2.764949480952e-03, -1.496891002434e-04,  2.616929800940e-03],
              [ 1.681115252789e-03,  4.298350843546e-04,  2.027970247502e-03],
              [-5.986612151404e-04, -3.405781091077e-04,  1.745682210687e-03],
              [ 2.373055804382e-04,  3.343590524897e-04,  8.103898922220e-04],
              [ 3.695170532087e-03, -1.396637964244e-03,  1.203152971539e-03],
              [ 7.107403470174e-06, -1.366727037249e-03, -3.567751091261e-04],
              [ 3.095237417410e-03,  1.561057829234e-03,  2.173203077372e-04],
              [ 2.251442344343e-03, -6.022439184346e-04, -1.365480971276e-03],
              [-2.326356492221e-03,  2.282766310718e-03, -1.282658286865e-03],
              [ 1.113830813076e-03,  2.992293551714e-03, -4.483250285281e-03],
              [-2.292411327611e-03, -9.595509152988e-04, -6.485076836511e-05],
              [ 1.177013060974e-03,  9.519559557318e-05,  1.089692231753e-03],
              [ 2.822865991215e-03,  1.458972679084e-03, -4.739254444012e-04],
              [ 7.650869174901e-04,  2.143219254255e-03, -3.298591813976e-03],
              [ 2.059828138324e-03, -7.989789977758e-04, -1.191915457110e-04],
              [ 2.416162908861e-04,  2.827863002377e-03, -1.514753239269e-03],
              [ 1.621883955985e-03, -3.861697825887e-03, -1.778557948100e-03],
              [ 1.340669552097e-03,  4.155307579052e-04,  6.201529910036e-04],
              [-2.085044256189e-04,  1.692750077838e-03,  3.547044127285e-03],
              [-7.260289735186e-04,  1.988220072290e-03,  2.597288955033e-03],
              [ 1.732606794317e-03, -1.378470638614e-03,  8.249943359639e-04],
              [-1.916441586225e-03, -3.264311529296e-03, -2.497512053523e-04],
              [ 5.692590927696e-04,  1.154041074696e-03,  1.987916370649e-03],
              [-2.968578850031e-03, -8.534834783055e-04,  1.596346394689e-03],
              [-8.907454715929e-04,  1.473759057078e-03, -1.239037728940e-03],
              [ 5.101929167131e-04, -8.025480182892e-04,  1.773431255153e-03],
              [-7.282854930670e-04, -3.495008387815e-03, -2.031158627235e-03],
              [ 1.483214975035e-03, -8.685198235603e-04, -2.758737279660e-03],
              [-4.541510466526e-04,  1.458792848678e-03,  1.228850189319e-03],
              [ 1.119276642676e-03,  1.980253787528e-03, -2.119789767367e-03],
              [ 1.751283113134e-03,  2.656944591367e-03,  4.888582342134e-04],
              [-4.795028347431e-04, -5.632052403533e-04, -4.613924111160e-03],
              [-1.867544708834e-03, -4.246022639257e-03,  1.945945551186e-03],
              [-1.125342650337e-03, -3.586110711734e-04,  1.987321885684e-03],
              [ 3.674701588723e-03,  1.260862768657e-03,  9.227059784099e-04],
              [-1.447984247765e-03,  3.781442040272e-05,  1.168532948648e-03],
              [-4.635873224946e-03, -1.750929742704e-03,  1.406738528869e-03],
              [ 2.949073251767e-03,  1.351172225818e-04,  4.841303335219e-03],
              [ 1.094898387367e-03,  5.672643948724e-04,  1.582903249393e-03],
              [ 2.045663177939e-03,  1.204376634758e-03,  2.593618842657e-03],
              [-1.481254344385e-03, -1.976244536541e-03, -3.904692161295e-03],
              [ 2.482029294337e-04, -3.643630346573e-04, -5.132605181519e-04],
              [-2.098395491478e-03, -2.033656847471e-03,  7.626633113354e-04],
              [ 3.228671512706e-03, -2.813727134914e-03,  2.602180016825e-04],
              [ 1.070988640941e-03,  2.126963387842e-03, -3.606618392049e-03],
              [ 2.140334162750e-03,  9.803506567757e-04, -1.830935981880e-03],
              [ 1.426882992047e-03, -1.276782074783e-03, -2.429768955410e-03],
              [-1.354618082514e-04, -4.358042091318e-04,  5.283204923580e-04],
              [ 8.461045745015e-04,  4.324139285291e-03, -2.935723353391e-03],
              [ 1.451442072745e-03, -1.182386473996e-03, -2.041130299988e-03],
              [-1.523944775083e-03,  2.472208587882e-03, -1.697841528605e-03],
              [ 6.379307880155e-05, -1.533276404350e-03, -1.538201413962e-03],
              [ 4.325943866410e-04, -1.873912867151e-04,  9.063397879056e-05],
              [ 2.411671242030e-03, -8.207140530858e-04, -2.599729438997e-03],
              [ 7.505376693173e-04, -1.251330832516e-03, -5.939227529803e-04],
              [-6.056213975061e-04,  2.152707505078e-03,  2.359894030674e-03],
              [-3.939485000524e-05, -1.321026250496e-03, -2.418322078679e-03],
              [-8.798184264899e-04,  2.987586998466e-04,  1.598489767853e-03],
              [ 7.289184874800e-05, -9.747883266257e-04, -2.699180689805e-03],
              [-1.132751372029e-03,  1.840786014111e-03, -6.636485440599e-04],
              [ 2.651962659355e-03, -8.240505329865e-04, -2.963179968890e-03],
              [-1.291078675461e-03, -7.564987683312e-05,  2.088713217788e-03],
              [-7.315352192558e-04,  1.996804088105e-03, -1.667607047825e-03],
              [ 1.606167371954e-03,  1.758449586708e-03, -1.778138857265e-04],
              [-6.656397954815e-04, -1.024873904487e-03, -2.513738866808e-03],
              [-6.624787915054e-04, -2.388507143059e-03,  5.149294615369e-04],
              [ 2.140976096363e-03,  4.349121716109e-03, -2.085793304844e-03],
              [ 1.901610302424e-03,  6.715303409252e-04,  8.861654465241e-04],
              [ 3.852276853903e-04,  2.818092257182e-03, -1.063139563166e-03],
              [-7.601907146980e-04,  3.251237573814e-03,  7.036263883776e-04],
              [ 3.308868546712e-03, -2.258528029364e-04, -7.413395805387e-04],
              [-3.873339127036e-03,  3.111350994120e-03, -1.422880646251e-03],
              [ 3.040524553579e-03, -2.176210629155e-03,  1.117669897631e-03],
              [ 7.210076828975e-04, -1.904742115292e-03,  4.504676309215e-03],
              [-2.303395024244e-03,  1.532037281504e-04, -6.209527789865e-04],
              [ 4.739086351163e-04, -1.551856397385e-03,  9.897752179653e-04],
              [ 6.050187537634e-04, -3.072088690429e-05,  5.062548977146e-04],
              [ 2.886530110098e-05, -3.473735837266e-04,  1.052761022700e-03],
              [ 4.803668353155e-04,  2.924762289878e-04, -1.639625968384e-03],
              [ 1.271356829907e-03, -1.554367135972e-03,  2.047325894764e-03],
              [-3.809632343099e-03,  8.142455201573e-04,  5.823795789468e-04],
              [-2.394279920300e-03,  1.713257632269e-03, -7.892240594910e-04],
              [ 1.215838708654e-04,  1.316351998905e-03,  1.068350319832e-03],
              [-1.826039768157e-03, -1.797752588405e-03, -1.402188830522e-03],
              [-2.325655220681e-04,  2.552016496015e-04, -2.782026997167e-04],
              [-2.220964478869e-03, -9.773860554954e-04,  5.859981614715e-04],
              [-1.106671138892e-03, -1.139894141334e-03,  1.959085708982e-03],
              [-4.172114590436e-03, -1.688278470763e-03,  1.069117510949e-03],
              [ 3.453266155780e-03, -8.441706320726e-04,  2.731421785649e-04],
              [-1.852701591373e-03, -3.924960982565e-03,  1.559348499834e-03],
              [-9.742732104358e-04,  1.610966356508e-03,  2.894351885685e-03],
              [-3.311905038339e-04, -1.191193633134e-03,  3.906422298625e-03],
              [ 2.171916947942e-03,  1.267241740933e-03,  3.413919067365e-04],
              [-7.405682553962e-04, -1.253486413952e-03,  2.145694313297e-03],
              [ 9.760896019401e-04,  1.172742653085e-03, -1.429132732143e-03],
              [-2.651308990427e-04, -2.696653428523e-04,  1.523449812303e-03],
              [ 1.306048845744e-04,  1.343294219944e-03, -4.466587624917e-03],
              [-1.721569620225e-03, -1.023122778774e-03, -1.754696966488e-03],
              [-8.792325191099e-04,  2.024421159131e-03, -4.301634285397e-04],
              [ 2.032445083924e-03, -6.621700617028e-04,  3.174300086863e-04],
              [-3.245207973149e-03, -6.207560553160e-04,  1.399305244164e-03],
              [-4.254815482218e-04,  1.499627301517e-03, -3.953892575589e-04],
              [ 3.896259356754e-04, -7.629168181559e-04,  3.674195218276e-03],
              [ 2.053649556164e-03,  2.681010770630e-04,  1.966370856263e-03],
              [-1.069476484482e-04,  2.202821318555e-03, -1.495441631680e-03],
              [-2.650280332284e-03,  1.474415394497e-03,  1.069904061650e-03],
              [ 2.390169395165e-03,  1.370773759126e-03,  3.556943031495e-03],
              [-1.833353390227e-03,  6.930049659477e-05, -2.627817275871e-03],
              [ 4.733318288094e-03, -1.391398140460e-03, -2.229483495450e-03],
              [-1.771962315584e-04, -3.359561247485e-03,  3.606220685601e-03],
              [-1.227965297622e-03, -3.274654690030e-04, -2.898979634025e-03],
              [ 5.083797589710e-04,  3.110772700087e-04,  1.390806260685e-03],
              [-1.318597048308e-02,  2.312252199835e-02,  3.882365806430e-03]]*Angstrom/fs

# Set up configuration
copper_hydrogen = BulkConfiguration(
    bravais_lattice=lattice,
    elements=elements,
    fractional_coordinates=fractional_coordinates,
    velocities=velocities
    )

# Add tags
copper_hydrogen.addTags('Copper',   [  0,   1,   2,   3,   4,   5,   6,   7,   8,   9,
                                      10,  11,  12,  13,  14,  15,  16,  17,  18,  19,
                                      20,  21,  22,  23,  24,  25,  26,  27,  28,  29,
                                      30,  31,  32,  33,  34,  35,  36,  37,  38,  39,
                                      40,  41,  42,  43,  44,  45,  46,  47,  48,  49,
                                      50,  51,  52,  53,  54,  55,  56,  57,  58,  59,
                                      60,  61,  62,  63,  64,  65,  66,  67,  68,  69,
                                      70,  71,  72,  73,  74,  75,  76,  77,  78,  79,
                                      80,  81,  82,  83,  84,  85,  86,  87,  88,  89,
                                      90,  91,  92,  93,  94,  95,  96,  97,  98,  99,
                                     100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
                                     110, 111, 112, 113, 114, 115, 116, 117, 118, 119,
                                     120, 121, 122, 123, 124, 125, 126, 127, 128, 129,
                                     130, 131, 132, 133, 134, 135, 136, 137, 138, 139,
                                     140, 141, 142, 143, 144, 145, 146, 147, 148, 149,
                                     150, 151, 152, 153, 154, 155, 156, 157, 158, 159,
                                     160, 161, 162, 163, 164, 165, 166, 167, 168, 169,
                                     170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
                                     180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
                                     190, 191, 192, 193, 194, 195, 196, 197, 198, 199,
                                     200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
                                     210, 211, 212, 213, 214, 215, 216, 217, 218, 219,
                                     220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
                                     230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
                                     240, 241, 242, 243, 244, 245, 246, 247, 248, 249,
                                     250, 251, 252, 253, 254, 255])
copper_hydrogen.addTags('Frozen',   [255])
copper_hydrogen.addTags('Hydrogen', [256])

copper_hydrogen_name = "Copper_Hydrogen"


# %% Set MachineLearnedForceFieldCalculator

# %% MachineLearnedForceFieldCalculator

potentialSet = QuantumATK_MTP_CuH_2025_06()
calculator = TremoloXCalculator(parameters=potentialSet)


# %% Set Calculator

copper_hydrogen.setCalculator(calculator)

nlsave('CVHD_CuH_Diffusion_Example_results.hdf5', copper_hydrogen)


# %% MolecularDynamics - Equilibration

method = Langevin()

constraints = [FixStrain(True, True, True), FixCenterOfMass()]

md_trajectory = MolecularDynamics(
    configuration=copper_hydrogen,
    constraints=constraints,
    trajectory_filename='CVHD_CuH_Diffusion_Example_results.hdf5',
    steps=50000,
    log_interval=1000,
    method=method,
    trajectory_interval=10000,
    trajectory_object_id='md',
)
last_image = md_trajectory.lastImage()

nlsave('CVHD_CuH_Diffusion_Example_results.hdf5', last_image, object_id='md_1')


# %% HookFunctions

# Post-step hook functions
hyperdynamics_position_distortion_1 = HyperdynamicsPositionDistortion(
    atom_tag='Hydrogen', maximum_radius=1.05 * Angstrom
)
collective_variable_hyperdynamics = CollectiveVariableHyperdynamics(
    distortions=[hyperdynamics_position_distortion_1],
    gaussian_width=0.05,
    gaussian_height=0.25 * kiloJoulePerMole,
    gaussian_frequency=500,
    bias_damping_temperature=2000.0 * Kelvin,
    gaussian_limit=0.9,
    reaction_steps=2500,
    measurement_frequency=100,
    tracked_atoms_tag='Hydrogen',
)


pre_step_hooks = []
post_step_hooks = [
    collective_variable_hyperdynamics,
]
measurement_hooks = []
hook_functions = HookFunctions(
    pre_step_hooks=pre_step_hooks,
    post_step_hooks=post_step_hooks,
    measurement_hooks=measurement_hooks,
)

nlsave('CVHD_CuH_Diffusion_Example_results.hdf5', hook_functions)


# %% MolecularDynamics - CVHD

method = Langevin(
    initial_velocity=ConfigurationVelocities(remove_center_of_mass_momentum=False)
)

constraints = [FixStrain(True, True, True), FixCenterOfMass()]

md_trajectory_1 = MolecularDynamics(
    configuration=last_image,
    constraints=constraints,
    trajectory_filename='CVHD_CuH_Diffusion_Example_results.hdf5',
    steps=1000000,
    log_interval=1000,
    method=method,
    hook_functions=hook_functions,
    trajectory_object_id='md_2',
)
last_image_1 = md_trajectory_1.lastImage()

nlsave('CVHD_CuH_Diffusion_Example_results.hdf5', last_image_1, object_id='md_3')
