diff --git "a/06_data_test.ipynb" "b/06_data_test.ipynb"
new file mode 100644--- /dev/null
+++ "b/06_data_test.ipynb"
@@ -0,0 +1,3185 @@
+{
+ "cells": [
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "id": "0b377412",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "=== Fluxonium Data Validation ===\n",
+ "EC = 1.9966462104925915, EJ = 2.7185515210182576, EL = 1.2139089020672094\n",
+ "MAE : 0.025557 GHz\n",
+ "RMSE : 0.030975 GHz\n",
+ "Relative MAE : 0.52%\n",
+ "R^2 score : 0.999464\n",
+ "Pearson corr : 0.999737\n",
+ "Shape MAE (norm) : 0.018965\n",
+ "Symmetry error sim: 0.000000\n",
+ "Symmetry error gen: 0.034414\n",
+ "\n",
+ "=== Simple Validation Rule ===\n",
+ "PASS: Generated data is very close to the physically expected trend.\n"
+ ]
+ },
+ {
+ "data": {
+ "application/pdf": "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agoxMyAwIG9iagpbIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwCjYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgMzE4IDQwMSA0NjAgODM4IDYzNgo5NTAgNzgwIDI3NSAzOTAgMzkwIDUwMCA4MzggMzE4IDM2MSAzMTggMzM3IDYzNiA2MzYgNjM2IDYzNiA2MzYgNjM2IDYzNiA2MzYKNjM2IDYzNiAzMzcgMzM3IDgzOCA4MzggODM4IDUzMSAxMDAwIDY4NCA2ODYgNjk4IDc3MCA2MzIgNTc1IDc3NSA3NTIgMjk1CjI5NSA2NTYgNTU3IDg2MyA3NDggNzg3IDYwMyA3ODcgNjk1IDYzNSA2MTEgNzMyIDY4NCA5ODkgNjg1IDYxMSA2ODUgMzkwIDMzNwozOTAgODM4IDUwMCA1MDAgNjEzIDYzNSA1NTAgNjM1IDYxNSAzNTIgNjM1IDYzNCAyNzggMjc4IDU3OSAyNzggOTc0IDYzNCA2MTIKNjM1IDYzNSA0MTEgNTIxIDM5MiA2MzQgNTkyIDgxOCA1OTIgNTkyIDUyNSA2MzYgMzM3IDYzNiA4MzggNjAwIDYzNiA2MDAgMzE4CjM1MiA1MTggMTAwMCA1MDAgNTAwIDUwMCAxMzQyIDYzNSA0MDAgMTA3MCA2MDAgNjg1IDYwMCA2MDAgMzE4IDMxOCA1MTggNTE4CjU5MCA1MDAgMTAwMCA1MDAgMTAwMCA1MjEgNDAwIDEwMjMgNjAwIDUyNSA2MTEgMzE4IDQwMSA2MzYgNjM2IDYzNiA2MzYgMzM3CjUwMCA1MDAgMTAwMCA0NzEgNjEyIDgzOCAzNjEgMTAwMCA1MDAgNTAwIDgzOCA0MDEgNDAxIDUwMCA2MzYgNjM2IDMxOCA1MDAKNDAxIDQ3MSA2MTIgOTY5IDk2OSA5NjkgNTMxIDY4NCA2ODQgNjg0IDY4NCA2ODQgNjg0IDk3NCA2OTggNjMyIDYzMiA2MzIgNjMyCjI5NSAyOTUgMjk1IDI5NSA3NzUgNzQ4IDc4NyA3ODcgNzg3IDc4NyA3ODcgODM4IDc4NyA3MzIgNzMyIDczMiA3MzIgNjExIDYwNQo2MzAgNjEzIDYxMyA2MTMgNjEzIDYxMyA2MTMgOTgyIDU1MCA2MTUgNjE1IDYxNSA2MTUgMjc4IDI3OCAyNzggMjc4IDYxMiA2MzQKNjEyIDYxMiA2MTIgNjEyIDYxMiA4MzggNjEyIDYzNCA2MzQgNjM0IDYzNCA1OTIgNjM1IDU5MiBdCmVuZG9iagoxNiAwIG9iago8PCAvRSAxNyAwIFIgL0YgMTggMCBSIC9HIDE5IDAgUiAvSCAyMCAwIFIgL1AgMjEgMCBSIC9TIDIzIDAgUiAvVCAyNCAwIFIKL2EgMjUgMCBSIC9iIDI2IDAgUiAvYyAyNyAwIFIgL2QgMjggMCBSIC9lIDI5IDAgUiAvZWlnaHQgMzAgMCBSIC9mIDMxIDAgUgovZml2ZSAzMiAwIFIgL2ZvdXIgMzMgMCBSIC9oIDM0IDAgUiAvaHlwaGVuIDM1IDAgUiAvaSAzNiAwIFIgL2wgMzcgMCBSCi9tIDM4IDAgUiAvbiAzOSAwIFIgL28gNDAgMCBSIC9vbmUgNDEgMCBSIC9wIDQyIDAgUiAvcGFyZW5sZWZ0IDQzIDAgUgovcGFyZW5yaWdodCA0NCAwIFIgL3BlcmlvZCA0NSAwIFIgL3EgNDYgMCBSIC9yIDQ3IDAgUiAvcyA0OCAwIFIgL3NpeCA0OSAwIFIKL3NsYXNoIDUwIDAgUiAvc3BhY2UgNTEgMCBSIC90IDUyIDAgUiAvdGhyZWUgNTMgMCBSIC90d28gNTQgMCBSIC91IDU1IDAgUgovdiA1NiAwIFIgL3ggNTcgMCBSIC95IDU4IDAgUiAveiA1OSAwIFIgL3plcm8gNjAgMCBSID4+CmVuZG9iagozIDAgb2JqCjw8IC9GMSAxNSAwIFIgPj4KZW5kb2JqCjQgMCBvYmoKPDwgL0ExIDw8IC9UeXBlIC9FeHRHU3RhdGUgL0NBIDAgL2NhIDEgPj4KL0EyIDw8IC9UeXBlIC9FeHRHU3RhdGUgL0NBIDAuMyAvY2EgMSA+PgovQTMgPDwgL1R5cGUgL0V4dEdTdGF0ZSAvQ0EgMSAvY2EgMSA+PgovQTQgPDwgL1R5cGUgL0V4dEdTdGF0ZSAvQ0EgMC44IC9jYSAwLjggPj4gPj4KZW5kb2JqCjUgMCBvYmoKPDwgPj4KZW5kb2JqCjYgMCBvYmoKPDwgPj4KZW5kb2JqCjcgMCBvYmoKPDwgL0YxLURlamFWdVNhbnMtUGhpIDIyIDAgUiA+PgplbmRvYmoKMiAwIG9iago8PCAvVHlwZSAvUGFnZXMgL0tpZHMgWyAxMSAwIFIgXSAvQ291bnQgMSA+PgplbmRvYmoKNjEgMCBvYmoKPDwgL0NyZWF0b3IgKE1hdHBsb3RsaWIgdjMuMTAuNSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZykKL1Byb2R1Y2VyIChNYXRwbG90bGliIHBkZiBiYWNrZW5kIHYzLjEwLjUpCi9DcmVhdGlvbkRhdGUgKEQ6MjAyNjA0MTQxOTI5MjgrMDUnMTgwMCcpID4+CmVuZG9iagp4cmVmCjAgNjIKMDAwMDAwMDAwMCA2NTUzNSBmIAowMDAwMDAwMDE2IDAwMDAwIG4gCjAwMDAwMTcxNjkgMDAwMDAgbiAKMDAwMDAxNjg2NSAwMDAwMCBuIAowMDAwMDE2ODk3IDAwMDAwIG4gCjAwMDAwMTcwODAgMDAwMDAgbiAKMDAwMDAxNzEwMSAwMDAwMCBuIAowMDAwMDE3MTIyIDAwMDAwIG4gCjAwMDAwMDAwNjUgMDAwMDAgbiAKMDAwMDAwMDM0MyAwMDAwMCBuIAowMDAwMDAzNTcxIDAwMDAwIG4gCjAwMDAwMDAyMDggMDAwMDAgbiAKMDAwMDAwMzU1MCAwMDAwMCBuIAowMDAwMDE1MzAyIDAwMDAwIG4gCjAwMDAwMTUwOTUgMDAwMDAgbiAKMDAwMDAxNDU2NSAwMDAwMCBuIAowMDAwMDE2MzU1IDAwMDAwIG4gCjAwMDAwMDM1OTEgMDAwMDAgbiAKMDAwMDAwMzc0NCAwMDAwMCBuIAowMDAwMDAzODkyIDAwMDAwIG4gCjAwMDAwMDQyMTIgMDAwMDAgbiAKMDAwMDAwNDM2MyAwMDAwMCBuIAowMDAwMDA0NjA2IDAwMDAwIG4gCjAwMDAwMDQ5ODYgMDAwMDAgbiAKMDAwMDAwNTQwMCAwMDAwMCBuIAowMDAwMDA1NTM4IDAwMDAwIG4gCjAwMDAwMDU5MTggMDAwMDAgbiAKMDAwMDAwNjIzNSAwMDAwMCBuIAowMDAwMDA2NTQwIDAwMDAwIG4gCjAwMDAwMDY4NDQgMDAwMDAgbiAKMDAwMDAwNzE2NiAwMDAwMCBuIAowMDAwMDA3NjM0IDAwMDAwIG4gCjAwMDAwMDc4NDMgMDAwMDAgbiAKMDAwMDAwODE2NSAwMDAwMCBuIAowMDAwMDA4MzMxIDAwMDAwIG4gCjAwMDAwMDg1NjggMDAwMDAgbiAKMDAwMDAwODY5NCAwMDAwMCBuIAowMDAwMDA4ODM4IDAwMDAwIG4gCjAwMDAwMDg5NTcgMDAwMDAgbiAKMDAwMDAwOTI4OCAwMDAwMCBuIAowMDAwMDA5NTI0IDAwMDAwIG4gCjAwMDAwMDk4MTUgMDAwMDAgbiAKMDAwMDAwOTk3MCAwMDAwMCBuIAowMDAwMDEwMjgyIDAwMDAwIG4gCjAwMDAwMTA1MDUgMDAwMDAgbiAKMDAwMDAxMDcyOSAwMDAwMCBuIAowMDAwMDEwODUyIDAwMDAwIG4gCjAwMDAwMTExNjggMDAwMDAgbiAKMDAwMDAxMTQwMSAwMDAwMCBuIAowMDAwMDExODA4IDAwMDAwIG4gCjAwMDAwMTIyMDEgMDAwMDAgbiAKMDAwMDAxMjMyNyAwMDAwMCBuIAowMDAwMDEyNDE3IDAwMDAwIG4gCjAwMDAwMTI2MjMgMDAwMDAgbiAKMDAwMDAxMzAzNiAwMDAwMCBuIAowMDAwMDEzMzYwIDAwMDAwIG4gCjAwMDAwMTM2MDcgMDAwMDAgbiAKMDAwMDAxMzc1NCAwMDAwMCBuIAowMDAwMDEzOTE1IDAwMDAwIG4gCjAwMDAwMTQxMjkgMDAwMDAgbiAKMDAwMDAxNDI3NyAwMDAwMCBuIAowMDAwMDE3MjI5IDAwMDAwIG4gCnRyYWlsZXIKPDwgL1NpemUgNjIgL1Jvb3QgMSAwIFIgL0luZm8gNjEgMCBSID4+CnN0YXJ0eHJlZgoxNzM5MAolJUVPRgo=",
+ "image/svg+xml": [
+ "\n",
+ "\n",
+ "\n"
+ ],
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/pdf": "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dCAvQk1RUURWK0RlamFWdVNhbnMgL0ZpcnN0Q2hhciAwIC9MYXN0Q2hhciAyNTUKL0ZvbnREZXNjcmlwdG9yIDE0IDAgUiAvU3VidHlwZSAvVHlwZTMgL05hbWUgL0JNUVFEVitEZWphVnVTYW5zCi9Gb250QkJveCBbIC0xMDIxIC00NjMgMTc5NCAxMjMzIF0gL0ZvbnRNYXRyaXggWyAwLjAwMSAwIDAgMC4wMDEgMCAwIF0KL0NoYXJQcm9jcyAxNiAwIFIKL0VuY29kaW5nIDw8IC9UeXBlIC9FbmNvZGluZwovRGlmZmVyZW5jZXMgWyAzMiAvc3BhY2UgNDAgL3BhcmVubGVmdCAvcGFyZW5yaWdodCA0NiAvcGVyaW9kIC9zbGFzaCAvemVybyAvb25lIC90d28gNTIKL2ZvdXIgNTQgL3NpeCA1NiAvZWlnaHQgNjYgL0IgL0MgNjkgL0UgNzEgL0cgL0ggODAgL1AgOTcgL2EgOTkgL2MgL2QgL2UgL2YKMTA0IC9oIC9pIDEwOCAvbCAxMTAgL24gL28gMTE0IC9yIC9zIC90IC91IC92IC93IC94IC95IC96IDEyNCAvYmFyIF0KPj4KL1dpZHRocyAxMyAwIFIgPj4KZW5kb2JqCjE0IDAgb2JqCjw8IC9UeXBlIC9Gb250RGVzY3JpcHRvciAvRm9udE5hbWUgL0JNUVFEVitEZWphVnVTYW5zIC9GbGFncyAzMgovRm9udEJCb3ggWyAtMTAyMSAtNDYzIDE3OTQgMTIzMyBdIC9Bc2NlbnQgOTI5IC9EZXNjZW50IC0yMzYgL0NhcEhlaWdodCAwCi9YSGVpZ2h0IDAgL0l0YWxpY0FuZ2xlIDAgL1N0ZW1WIDAgL01heFdpZHRoIDEzNDIgPj4KZW5kb2JqCjEzIDAgb2JqClsgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAKNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCAzMTggNDAxIDQ2MCA4MzggNjM2Cjk1MCA3ODAgMjc1IDM5MCAzOTAgNTAwIDgzOCAzMTggMzYxIDMxOCAzMzcgNjM2IDYzNiA2MzYgNjM2IDYzNiA2MzYgNjM2IDYzNgo2MzYgNjM2IDMzNyAzMzcgODM4IDgzOCA4MzggNTMxIDEwMDAgNjg0IDY4NiA2OTggNzcwIDYzMiA1NzUgNzc1IDc1MiAyOTUKMjk1IDY1NiA1NTcgODYzIDc0OCA3ODcgNjAzIDc4NyA2OTUgNjM1IDYxMSA3MzIgNjg0IDk4OSA2ODUgNjExIDY4NSAzOTAgMzM3CjM5MCA4MzggNTAwIDUwMCA2MTMgNjM1IDU1MCA2MzUgNjE1IDM1MiA2MzUgNjM0IDI3OCAyNzggNTc5IDI3OCA5NzQgNjM0IDYxMgo2MzUgNjM1IDQxMSA1MjEgMzkyIDYzNCA1OTIgODE4IDU5MiA1OTIgNTI1IDYzNiAzMzcgNjM2IDgzOCA2MDAgNjM2IDYwMCAzMTgKMzUyIDUxOCAxMDAwIDUwMCA1MDAgNTAwIDEzNDIgNjM1IDQwMCAxMDcwIDYwMCA2ODUgNjAwIDYwMCAzMTggMzE4IDUxOCA1MTgKNTkwIDUwMCAxMDAwIDUwMCAxMDAwIDUyMSA0MDAgMTAyMyA2MDAgNTI1IDYxMSAzMTggNDAxIDYzNiA2MzYgNjM2IDYzNiAzMzcKNTAwIDUwMCAxMDAwIDQ3MSA2MTIgODM4IDM2MSAxMDAwIDUwMCA1MDAgODM4IDQwMSA0MDEgNTAwIDYzNiA2MzYgMzE4IDUwMAo0MDEgNDcxIDYxMiA5NjkgOTY5IDk2OSA1MzEgNjg0IDY4NCA2ODQgNjg0IDY4NCA2ODQgOTc0IDY5OCA2MzIgNjMyIDYzMiA2MzIKMjk1IDI5NSAyOTUgMjk1IDc3NSA3NDggNzg3IDc4NyA3ODcgNzg3IDc4NyA4MzggNzg3IDczMiA3MzIgNzMyIDczMiA2MTEgNjA1CjYzMCA2MTMgNjEzIDYxMyA2MTMgNjEzIDYxMyA5ODIgNTUwIDYxNSA2MTUgNjE1IDYxNSAyNzggMjc4IDI3OCAyNzggNjEyIDYzNAo2MTIgNjEyIDYxMiA2MTIgNjEyIDgzOCA2MTIgNjM0IDYzNCA2MzQgNjM0IDU5MiA2MzUgNTkyIF0KZW5kb2JqCjE2IDAgb2JqCjw8IC9CIDE3IDAgUiAvQyAxOCAwIFIgL0UgMTkgMCBSIC9HIDIwIDAgUiAvSCAyMSAwIFIgL1AgMjIgMCBSIC9hIDI0IDAgUgovYmFyIDI1IDAgUiAvYyAyNiAwIFIgL2QgMjcgMCBSIC9lIDI4IDAgUiAvZWlnaHQgMjkgMCBSIC9mIDMwIDAgUgovZm91ciAzMSAwIFIgL2ggMzIgMCBSIC9pIDMzIDAgUiAvbCAzNCAwIFIgL24gMzUgMCBSIC9vIDM2IDAgUiAvb25lIDM3IDAgUgovcGFyZW5sZWZ0IDM4IDAgUiAvcGFyZW5yaWdodCAzOSAwIFIgL3BlcmlvZCA0MCAwIFIgL3IgNDEgMCBSIC9zIDQyIDAgUgovc2l4IDQzIDAgUiAvc2xhc2ggNDQgMCBSIC9zcGFjZSA0NSAwIFIgL3QgNDYgMCBSIC90d28gNDcgMCBSIC91IDQ4IDAgUgovdiA0OSAwIFIgL3cgNTAgMCBSIC94IDUxIDAgUiAveSA1MiAwIFIgL3ogNTMgMCBSIC96ZXJvIDU0IDAgUiA+PgplbmRvYmoKMyAwIG9iago8PCAvRjEgMTUgMCBSID4+CmVuZG9iago0IDAgb2JqCjw8IC9BMSA8PCAvVHlwZSAvRXh0R1N0YXRlIC9DQSAwIC9jYSAxID4+Ci9BMiA8PCAvVHlwZSAvRXh0R1N0YXRlIC9DQSAwLjMgL2NhIDEgPj4KL0EzIDw8IC9UeXBlIC9FeHRHU3RhdGUgL0NBIDEgL2NhIDEgPj4gPj4KZW5kb2JqCjUgMCBvYmoKPDwgPj4KZW5kb2JqCjYgMCBvYmoKPDwgPj4KZW5kb2JqCjcgMCBvYmoKPDwgL0YxLURlamFWdVNhbnMtUGhpIDIzIDAgUiA+PgplbmRvYmoKMiAwIG9iago8PCAvVHlwZSAvUGFnZXMgL0tpZHMgWyAxMSAwIFIgXSAvQ291bnQgMSA+PgplbmRvYmoKNTUgMCBvYmoKPDwgL0NyZWF0b3IgKE1hdHBsb3RsaWIgdjMuMTAuNSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZykKL1Byb2R1Y2VyIChNYXRwbG90bGliIHBkZiBiYWNrZW5kIHYzLjEwLjUpCi9DcmVhdGlvbkRhdGUgKEQ6MjAyNjA0MTQxOTI5MjkrMDUnMTgwMCcpID4+CmVuZG9iagp4cmVmCjAgNTYKMDAwMDAwMDAwMCA2NTUzNSBmIAowMDAwMDAwMDE2IDAwMDAwIG4gCjAwMDAwMTQxNTEgMDAwMDAgbiAKMDAwMDAxMzg5MCAwMDAwMCBuIAowMDAwMDEzOTIyIDAwMDAwIG4gCjAwMDAwMTQwNjIgMDAwMDAgbiAKMDAwMDAxNDA4MyAwMDAwMCBuIAowMDAwMDE0MTA0IDAwMDAwIG4gCjAwMDAwMDAwNjUgMDAwMDAgbiAKMDAwMDAwMDM0MyAwMDAwMCBuIAowMDAwMDAyNTc3IDAwMDAwIG4gCjAwMDAwMDAyMDggMDAwMDAgbiAKMDAwMDAwMjU1NiAwMDAwMCBuIAowMDAwMDEyMzk3IDAwMDAwIG4gCjAwMDAwMTIxOTAgMDAwMDAgbiAKMDAwMDAxMTY2OCAwMDAwMCBuIAowMDAwMDEzNDUwIDAwMDAwIG4gCjAwMDAwMDI1OTcgMDAwMDAgbiAKMDAwMDAwMjkzNCAwMDAwMCBuIAowMDAwMDAzMjQyIDAwMDAwIG4gCjAwMDAwMDMzOTUgMDAwMDAgbiAKMDAwMDAwMzcxNSAwMDAwMCBuIAowMDAwMDAzODY2IDAwMDAwIG4gCjAwMDAwMDQxMDkgMDAwMDAgbiAKMDAwMDAwNDQ4OSAwMDAwMCBuIAowMDAwMDA0ODY5IDAwMDAwIG4gCjAwMDAwMDQ5OTcgMDAwMDAgbiAKMDAwMDAwNTMwMiAwMDAwMCBuIAowMDAwMDA1NjA2IDAwMDAwIG4gCjAwMDAwMDU5MjggMDAwMDAgbiAKMDAwMDAwNjM5NiAwMDAwMCBuIAowMDAwMDA2NjA1IDAwMDAwIG4gCjAwMDAwMDY3NzEgMDAwMDAgbiAKMDAwMDAwNzAwOCAwMDAwMCBuIAowMDAwMDA3MTUyIDAwMDAwIG4gCjAwMDAwMDcyNzEgMDAwMDAgbiAKMDAwMDAwNzUwNyAwMDAwMCBuIAowMDAwMDA3Nzk4IDAwMDAwIG4gCjAwMDAwMDc5NTMgMDAwMDAgbiAKMDAwMDAwODE3NiAwMDAwMCBuIAowMDAwMDA4NDAwIDAwMDAwIG4gCjAwMDAwMDg1MjMgMDAwMDAgbiAKMDAwMDAwODc1NiAwMDAwMCBuIAowMDAwMDA5MTYzIDAwMDAwIG4gCjAwMDAwMDk1NTYgMDAwMDAgbiAKMDAwMDAwOTY4MiAwMDAwMCBuIAowMDAwMDA5NzcyIDAwMDAwIG4gCjAwMDAwMDk5NzggMDAwMDAgbiAKMDAwMDAxMDMwMiAwMDAwMCBuIAowMDAwMDEwNTQ5IDAwMDAwIG4gCjAwMDAwMTA2OTYgMDAwMDAgbiAKMDAwMDAxMDg1NyAwMDAwMCBuIAowMDAwMDExMDE4IDAwMDAwIG4gCjAwMDAwMTEyMzIgMDAwMDAgbiAKMDAwMDAxMTM4MCAwMDAwMCBuIAowMDAwMDE0MjExIDAwMDAwIG4gCnRyYWlsZXIKPDwgL1NpemUgNTYgL1Jvb3QgMSAwIFIgL0luZm8gNTUgMCBSID4+CnN0YXJ0eHJlZgoxNDM3MgolJUVPRgo=",
+ "image/svg+xml": [
+ "\n",
+ "\n",
+ "\n"
+ ],
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Saved: fluxonium_validation_one_sample.csv\n"
+ ]
+ }
+ ],
+ "source": [
+ "import numpy as np\n",
+ "import matplotlib.pyplot as plt\n",
+ "import pandas as pd\n",
+ "from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score\n",
+ "from scipy.stats import pearsonr\n",
+ "import scqubits as scq\n",
+ "\n",
+ "# ============================================================\n",
+ "# 1. LOAD ONE SAMPLE FROM YOUR GENERATED DATASET\n",
+ "# ============================================================\n",
+ "# Replace this block with your actual dataset loading logic.\n",
+ "#\n",
+ "# Expected structure for one sample:\n",
+ "# sample = {\n",
+ "# \"EC\": 0.8,\n",
+ "# \"EJ\": 8.5,\n",
+ "# \"EL\": 0.5,\n",
+ "# \"flux\": np.array([...]), # normalized flux, e.g. 0 to 1\n",
+ "# \"f01_data\": np.array([...]) # generated dataset's 0->1 transition frequency\n",
+ "# }\n",
+ "#\n",
+ "# Example placeholder:\n",
+ "sample = {\n",
+ " \"EC\": 1.9966462104925915,\n",
+ " \"EL\": 1.2139089020672094,\n",
+ " \"EJ\": 2.7185515210182576,\n",
+ " \"flux\": np.linspace(0.0, 1.0, 101),\n",
+ " \"f01_data\": None\n",
+ "}\n",
+ "\n",
+ "# ============================================================\n",
+ "# 2. SIMULATE THE PHYSICALLY EXPECTED FLUXONIUM f01 CURVE\n",
+ "# ============================================================\n",
+ "def simulate_fluxonium_f01(EC, EJ, EL, flux_array, cutoff=110):\n",
+ " f01 = []\n",
+ " for phi in flux_array:\n",
+ " qubit = scq.Fluxonium(EJ=EJ, EC=EC, EL=EL, flux=phi, cutoff=cutoff)\n",
+ " evals = qubit.eigenvals(evals_count=3)\n",
+ " f01.append(evals[1] - evals[0]) # transition 0->1\n",
+ " return np.array(f01)\n",
+ "\n",
+ "f01_phys = simulate_fluxonium_f01(\n",
+ " EC=sample[\"EC\"],\n",
+ " EJ=sample[\"EJ\"],\n",
+ " EL=sample[\"EL\"],\n",
+ " flux_array=sample[\"flux\"],\n",
+ " cutoff=110\n",
+ ")\n",
+ "\n",
+ "# ============================================================\n",
+ "# 3. IF YOUR DATASET DOES NOT ALREADY STORE f01_data,\n",
+ "# MAKE A MOCK \"GENERATED\" VERSION FOR TESTING\n",
+ "# ============================================================\n",
+ "if sample[\"f01_data\"] is None:\n",
+ " rng = np.random.default_rng(42)\n",
+ " noise = rng.normal(0, 0.03 * np.std(f01_phys), size=len(f01_phys))\n",
+ " sample[\"f01_data\"] = f01_phys + noise\n",
+ "\n",
+ "f01_data = np.array(sample[\"f01_data\"])\n",
+ "\n",
+ "# ============================================================\n",
+ "# 4. COMPARE GENERATED DATA VS PHYSICAL EXPECTATION\n",
+ "# ============================================================\n",
+ "mae = mean_absolute_error(f01_phys, f01_data)\n",
+ "rmse = np.sqrt(mean_squared_error(f01_phys, f01_data))\n",
+ "r2 = r2_score(f01_phys, f01_data)\n",
+ "corr, _ = pearsonr(f01_phys, f01_data)\n",
+ "\n",
+ "# Relative MAE as percentage of mean physical frequency\n",
+ "rel_mae_percent = 100 * mae / np.mean(np.abs(f01_phys))\n",
+ "\n",
+ "# Shape similarity: compare normalized curves\n",
+ "f01_phys_norm = (f01_phys - np.mean(f01_phys)) / np.std(f01_phys)\n",
+ "f01_data_norm = (f01_data - np.mean(f01_data)) / np.std(f01_data)\n",
+ "shape_mae = mean_absolute_error(f01_phys_norm, f01_data_norm)\n",
+ "\n",
+ "# Symmetry check around half flux for fluxonium-like behavior\n",
+ "# Compare left half with mirrored right half\n",
+ "def symmetry_error(y):\n",
+ " n = len(y)\n",
+ " left = y[:n//2]\n",
+ " right = y[-(n//2):][::-1]\n",
+ " m = min(len(left), len(right))\n",
+ " return np.mean(np.abs(left[:m] - right[:m]))\n",
+ "\n",
+ "sym_phys = symmetry_error(f01_phys)\n",
+ "sym_data = symmetry_error(f01_data)\n",
+ "\n",
+ "# ============================================================\n",
+ "# 5. PRINT RESULTS\n",
+ "# ============================================================\n",
+ "print(\"=== Fluxonium Data Validation ===\")\n",
+ "print(f\"EC = {sample['EC']}, EJ = {sample['EJ']}, EL = {sample['EL']}\")\n",
+ "print(f\"MAE : {mae:.6f} GHz\")\n",
+ "print(f\"RMSE : {rmse:.6f} GHz\")\n",
+ "print(f\"Relative MAE : {rel_mae_percent:.2f}%\")\n",
+ "print(f\"R^2 score : {r2:.6f}\")\n",
+ "print(f\"Pearson corr : {corr:.6f}\")\n",
+ "print(f\"Shape MAE (norm) : {shape_mae:.6f}\")\n",
+ "print(f\"Symmetry error sim: {sym_phys:.6f}\")\n",
+ "print(f\"Symmetry error gen: {sym_data:.6f}\")\n",
+ "\n",
+ "# ============================================================\n",
+ "# 6. DECISION RULE\n",
+ "# ============================================================\n",
+ "print(\"\\n=== Simple Validation Rule ===\")\n",
+ "if corr > 0.98 and rel_mae_percent < 5:\n",
+ " print(\"PASS: Generated data is very close to the physically expected trend.\")\n",
+ "elif corr > 0.95 and rel_mae_percent < 10:\n",
+ " print(\"GOOD: Generated data captures the correct physical nature reasonably well.\")\n",
+ "else:\n",
+ " print(\"CHECK: Generated data may deviate noticeably from expected physical behavior.\")\n",
+ "\n",
+ "# ============================================================\n",
+ "# 7. PLOT\n",
+ "# ============================================================\n",
+ "plt.figure(figsize=(10, 6))\n",
+ "plt.plot(sample[\"flux\"], f01_phys, label=\"Physics-based expected f01\", linewidth=3)\n",
+ "plt.plot(sample[\"flux\"], f01_data, '--', label=\"Generated dataset f01\", linewidth=2)\n",
+ "plt.xlabel(\"External flux (Φ/Φ0)\")\n",
+ "plt.ylabel(\"Transition frequency f01 (GHz)\")\n",
+ "plt.title(\"Generated vs Physically Expected Fluxonium Spectroscopy\")\n",
+ "plt.legend()\n",
+ "plt.grid(True, alpha=0.3)\n",
+ "plt.tight_layout()\n",
+ "plt.show()\n",
+ "\n",
+ "# ============================================================\n",
+ "# 8. ERROR PLOT\n",
+ "# ============================================================\n",
+ "plt.figure(figsize=(10, 4))\n",
+ "plt.plot(sample[\"flux\"], np.abs(f01_data - f01_phys), color=\"crimson\", linewidth=2)\n",
+ "plt.xlabel(\"External flux (Φ/Φ0)\")\n",
+ "plt.ylabel(\"|Error| in f01 (GHz)\")\n",
+ "plt.title(\"Pointwise Error Between Generated and Physical Curves\")\n",
+ "plt.grid(True, alpha=0.3)\n",
+ "plt.tight_layout()\n",
+ "plt.show()\n",
+ "\n",
+ "# ============================================================\n",
+ "# 9. SAVE RESULTS TABLE\n",
+ "# ============================================================\n",
+ "results = pd.DataFrame({\n",
+ " \"flux\": sample[\"flux\"],\n",
+ " \"f01_physical\": f01_phys,\n",
+ " \"f01_generated\": f01_data,\n",
+ " \"abs_error\": np.abs(f01_data - f01_phys)\n",
+ "})\n",
+ "\n",
+ "results.to_csv(\"fluxonium_validation_one_sample.csv\", index=False)\n",
+ "print(\"\\nSaved: fluxonium_validation_one_sample.csv\")"
+ ]
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.13.2"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}