# ============================================================================
# HOW THIS FILE WORKS (cases + engines + tolerances)
#
# This file is parsed into *cases*. A case starts with:
#     # @case: <case_id>
# and continues until the next "# @case:" (or end-of-file).
# Every non-empty, non-comment line under a case is treated as a command
# belonging to that case.
#
# --------------------------------------------------------------------------
# ENGINE PREFIXES (NOT executable paths)
#
# Each command line must start with an engine prefix (e.g. "adda", "ifdda",
# "ddscatcli", "adda_debug", ...). This prefix is only used to:
#   1) detect which engine configuration to use from dda_codes.json
#   2) strip the prefix before building the real command
#
# IMPORTANT:
# - The engine prefix is NOT the executable path.
# - Executable paths + environment are configured in dda_codes.json:
#       "exe": "...", "env": {...}, etc.
#   Relative paths are resolved from the repository root.
#
# --------------------------------------------------------------------------
# CASE ID RULE
#
# case_id is used to create output folders:
#     outputs/<case_id>/<engine>/...
# Use only "safe" ids. In practice: use underscores "_" between words.
# Avoid spaces and "/" in case ids.
#
# --------------------------------------------------------------------------
# PER-CASE TOLERANCES (REQUIRED)
#
# You MUST always define residual tolerance:
#     # @tol_res: <min_digits> <max_digits>
#
# For Ext/Abs, you MUST use either:
#   A) One shared tolerance for Ext + Abs:
#         # @tol: <min_digits> <max_digits>
#      (applies to Ext and Abs)
#
#   OR
#   B) Two separate tolerances:
#         # @tol_ext: <min_digits> <max_digits>
#         # @tol_abs: <min_digits> <max_digits>
#
# Notes:
# - Ext/Abs are displayed as two columns:
#     Ext compares (Cext vs Cext) if both are raw, else (Qext vs Qext) if both are raw,
#     otherwise falls back to derived values (shown with C* or Q*).
#     Same logic for Abs.
# - residual1 can FAIL the case if it is outside @tol_res (not just a warning).
#
# --------------------------------------------------------------------------
# OPTIONAL: INT_FIELD / FORCE / TORQUE / MUELLER (PER-CASE)
#
# If a case is meant to compare internal field and/or force and/or torque and/or mueller matrix, add:
#     # @need_int
#     # @need_force
#     # @need_torque
#     # @need_mueller
#
# And then you MUST also provide the corresponding tolerance:
#     # @tol_int:   <min_digits> <max_digits>    (required if @need_int)
#     # @tol_force: <min_digits> <max_digits>    (required if @need_force)
#     # @tol_torque: <min_digits> <max_digits>    (required if @need_torque)
#     # @tol_mueller: <min_digits> <max_digits>  (required if @need_mueller)
#
# When enabled extra columns "int_field" / "force" / "torque" / "mueller" are displayed for that case*.
#
# --------------------------------------------------------------------------
# OPTIONAL: SKIP PAIRWISE COMPARISONS
#
# To skip specific engine pairs for a case, use:
#     # @skip_pairs:
#     #   <engineA> <engineB>
#     #   <engineC> <engineD>
#     #   ...
#
# Each line defines one pair to skip. Pairs are symmetric (A,B) == (B,A).
# Engine names must match keys in dda_codes.json.
#
# ============================================================================
# @case: sphere_rrc_qmr
# @tol: 10 16
# @tol_res: 10 16
#----------Radiative Reaction Correction----------#
adda -lambda 0.5 -shape sphere -size 0.2 -iter qmr -m 1.3716237728525569 0.4374377375744837 -eps 4 -pol rrc -int poi -grid 16 -init_field zero -no_vol_cor -scat dr
ifdda -lambda 500 -object sphere 100 -methodeit QMRCLA -epsmulti 1.69 1.2 -tolinit 1.d-4 -polarizability RR -igt 0 -nnnr 16 -ninitest 0 
# @case: sphere_cm_qmr
# @tol: 10 16
# @tol_res: 10 16
#----------Clausius Mossotti----------#
adda -lambda 0.5 -shape sphere -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol cm -grid 16 -init_field zero -no_vol_cor -scat dr
ifdda -lambda 500 -object sphere 100 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability CM -nnnr 16 -ninitest 0
# @case: sphere_lak_qmr
# @tol: 10 16
# @tol_res: 10 16
#----------Lakhtakia----------#
adda -lambda 0.5 -shape sphere -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol lak -grid 16 -init_field zero -no_vol_cor -scat dr
ifdda -lambda 500 -object sphere 100 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LA -nnnr 16 -ninitest 0
# @case: sphere_dgf_qmr
# @tol: 10 16
# @tol_res: 10 16
#----------Digitized Green's function----------#
adda -lambda 0.5 -shape sphere -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol dgf -grid 16 -init_field zero -no_vol_cor -scat dr
ifdda -lambda 500 -object sphere 100 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability GB -nnnr 16 -ninitest 0
# @case: sphere_fcd_qmr
# @tol: 10 16
# @tol_res: 10 16
#----------Filtered Coupled Dipoles----------#
adda -lambda 0.5 -shape sphere -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol fcd -int fcd -grid 15 -init_field zero -scat dr -prop 1 0 0
ifdda -lambda 500 -object sphere 99.5540512465 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability FG -nnnr 15 -ninitest 0 -prop 90 0
ddscatcli -CMDSOL QMRCCG -CALPHA FLTRCD -MEM_ALLOW "15 15 15" -CSHAPE ELLIPSOID -SHPAR "15 15 15" -DIEL "diel/m1.302265942870714_0.07678923076154483" -WAVELENGTHS "0.5 0.5 1 'LIN'" -AEFF "0.1 0.1 1 'LIN'" -TOL 1.e-4 -IORTH 1 -POL_E01 "(0,0) (1,0) (0,0)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -CMDTRQ NOTORQ -ETASCA 10 -run
# @case: sphere_ildr_qmr
# @tol: 10 16
# @tol_res: 10 16
#----------Isotropized Lattice Dispersion Relation----------#
adda -lambda 0.5 -shape sphere -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr avgpol -grid 16 -init_field zero -no_vol_cor -prop 0.8506508083520399 0 0.5257311121191336 -sym enf -scat dr
ifdda -lambda 500 -object sphere 100 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LR -nnnr 16 -ninitest 0 -prop 58.282525588538995 0.0
# @case: sphere_ldr_qmr
# @tol: 10 16
# @tol_res: 10 16
#----------Classic Lattice Dispersion Relation----------#
adda -lambda 0.5 -shape sphere -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 15 -init_field zero -scat dr -prop 1 0 0 -sym enf
ifdda -lambda 500 -object sphere 99.5540512465 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 15 -ninitest 0 -prop 90 0
ddscatcli -CMDSOL QMRCCG -CALPHA LATTDR -MEM_ALLOW "15 15 15" -CSHAPE ELLIPSOID -SHPAR "15 15 15" -DIEL "diel/m1.302265942870714_0.07678923076154483" -WAVELENGTHS "0.5 0.5 1 'LIN'" -AEFF "0.1 0.1 1 'LIN'" -TOL 1.e-4 -IORTH 1 -POL_E01 "(0,0) (1,0) (0,0)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -run
# @case: sphere_igt_qmr
# @tol: 6 9
# @tol_res: 6 9
#----------Integrated Green's Tensor----------#
adda -lambda 0.5 -shape sphere -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -no_vol_cor -int igt 1 -scat dr
ifdda -lambda 500 -object sphere 100 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 16 -ninitest 0 -igt 1
# @case: sphere_ldr_bicgstab
# @tol: 10 16
# @tol_res: 10 16
#----------Bi-conjugate gradient stabilized----------#
adda -lambda 0.5 -shape sphere -size 0.2 -iter bicgstab -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 15 -init_field zero -scat dr -prop 1 0 0
ifdda -lambda 500 -object sphere 99.5540512465 -methodeit BICGSTAB -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 15 -ninitest 0 -prop 90 0
ddscatcli -CMDSOL PBCGST -CALPHA LATTDR -MEM_ALLOW "15 15 15" -CSHAPE ELLIPSOID -SHPAR "15 15 15" -DIEL "diel/m1.302265942870714_0.07678923076154483" -WAVELENGTHS "0.5 0.5 1 'LIN'" -AEFF "0.1 0.1 1 'LIN'" -TOL 1.e-4 -IORTH 1 -POL_E01 "(0,0) (1,0) (0,0)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -NRFLD 0 -run
# @case: sphere_ldr_bicgstab2
# @tol: 10 16
# @tol_res: 10 16
#---------- Enhanced Bi-CGStab(2) ----------#
adda -lambda 0.5 -shape sphere -size 0.2 -iter bcgs2 -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 15 -init_field zero -scat dr -prop 1 0 0
ddscatcli -CMDSOL PBCGS2 -CALPHA LATTDR -MEM_ALLOW "15 15 15" -CSHAPE ELLIPSOID -SHPAR "15 15 15" -DIEL "diel/m1.302265942870714_0.07678923076154483" -WAVELENGTHS "0.5 0.5 1 'LIN'" -AEFF "0.1 0.1 1 'LIN'" -TOL 1.e-4 -IORTH 1 -POL_E01 "(0,0) (1,0) (0,0)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -NRFLD 0 -run
# @case: sphere_ldr_gpbicg
# @tol: 10 16
# @tol_res: 10 16
#----------Generalized Product Bi-Conjugate Gradient----------#
ifdda -lambda 500 -object sphere 99.5540512465 -methodeit GPBICG1 -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 15 -ninitest 0 -prop 90 0
ddscatcli -CMDSOL GPBICG -CALPHA LATTDR -MEM_ALLOW "15 15 15" -CSHAPE ELLIPSOID -SHPAR "15 15 15" -DIEL "diel/m1.302265942870714_0.07678923076154483" -WAVELENGTHS "0.5 0.5 1 'LIN'" -AEFF "0.1 0.1 1 'LIN'" -TOL 1.e-4 -IORTH 1 -POL_E01 "(0,0) (1,0) (0,0)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -NRFLD 0 -run
# @case: cube_ldr_qmr
# @tol: 10 16
# @tol_res: 10 16
#----------Cube----------#
adda -lambda 0.5 -shape box 1 1 -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -scat dr
ifdda -lambda 500 -object cube 200 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 16 -ninitest 0
ddscatcli -CSHAPE RCTGLPRSM -AEFF "0.12407009817988003 0.12407009817988003 1 'LIN'" -WAVELENGTHS "0.5 0.5 1 'LIN'" -DIEL "diel/m1.302265942870714_0.07678923076154483" -MEM_ALLOW "16 16 16" -SHPAR "16 16 16" -TOL 1e-4 -CMDSOL QMRCCG -CALPHA LATTDR -NRFLD 0 -IORTH 1 -POL_E01 "(0,0) (1,0) (0,0)" -run
# @case: cuboid_ldr_qmr
# @tol: 10 16
# @tol_res: 10 16
#----------Cuboid----------#
adda -lambda 0.5 -shape box 1 0.5 -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -scat dr -prop 1 0 0 -sym enf -scat_matr none
ifdda -lambda 500 -object cuboid1 200 200 100 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 16 -ninitest 0 -prop 90 0
ddscatcli -CSHAPE RCTGLPRSM -AEFF "0.09847450218426967 0.09847450218426967 1 'LIN'" -WAVELENGTHS "0.5 0.5 1 'LIN'" -DIEL "diel/m1.302265942870714_0.07678923076154483" -MEM_ALLOW "16 16 8" -SHPAR "16 16 8" -TOL 1e-4 -CMDSOL QMRCCG -CALPHA LATTDR -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -NRFLD 0 -IORTH 1 -POL_E01 "(0,0) (1,0) (0,0)" -run
# @case: cylinder_ldr_qmr_both_pol
# @tol: 10 16
# @tol_res: 10 16
#----------Cylinder (both polarizations)----------#
adda -lambda 0.5 -shape cylinder 0.5 -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -scat dr -prop 1 0 0 
ddscatcli -CSHAPE CYLNDRPBC -AEFF "0.09085602964160698 0.09085602964160698 1 'LIN'" -WAVELENGTHS "0.5 0.5 1 'LIN'" -DIEL "diel/m1.302265942870714_0.07678923076154483" -MEM_ALLOW "16 16 16" -SHPAR "8 16 3 0 0 1" -TOL 1e-4 -CMDSOL QMRCCG -CALPHA LATTDR -IORTH 2 -POL_E01 "(0,0) (1,0) (0,0)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -run
# @case: cylinder_ldr_qmr_perp_pol
# @tol: 10 16
# @tol_res: 10 16
#----------Cylinder (perpendicular-polarization)----------#
adda -lambda 0.5 -shape cylinder 0.5 -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -scat dr -prop 1 0 0 -sym enf
ifdda -lambda 500 -object cylinder 98.8755329116021 100 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 16 -ninitest 0 -prop 90 0
ddscatcli -CSHAPE CYLNDRPBC -AEFF "0.09085602964160698 0.09085602964160698 1 'LIN'" -WAVELENGTHS "0.5 0.5 1 'LIN'" -DIEL "diel/m1.302265942870714_0.07678923076154483" -MEM_ALLOW "16 16 16" -SHPAR "8 16 3 0 0 1" -TOL 1e-4 -CMDSOL QMRCCG -CALPHA LATTDR -IORTH 1 -POL_E01 "(0,0) (1,0) (0,0)" -run
# @case: cylinder_ldr_qmr_par_pol
# @tol: 10 16
# @tol_res: 10 16
#----------Cylinder (parallel-polarization)----------#
adda -lambda 0.5 -shape cylinder 0.5 -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -scat dr -prop 1 0 0
ifdda -lambda 500 -object cylinder 98.8755329116021 100 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 16 -ninitest 0 -prop 90 0 -beam pwavelinear 1 1
ddscatcli -CSHAPE CYLNDRPBC -AEFF "0.09085602964160698 0.09085602964160698 1 'LIN'" -WAVELENGTHS "0.5 0.5 1 'LIN'" -DIEL "diel/m1.302265942870714_0.07678923076154483" -MEM_ALLOW "16 16 16" -SHPAR "8 16 3 0 0 1" -TOL 1e-4 -CMDSOL QMRCCG -CALPHA LATTDR -IORTH 1 -POL_E01 "(0,0) (0,0) (1,0)" -run
# @case: ellipsoid_ldr_qmr_both_pol
# @tol: 10 16
# @tol_res: 10 16
#----------Ellipsoid (non-symmetric both polarizations)----------#
adda -lambda 0.5 -shape ellipsoid 2.0 0.5 -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -scat dr -prop 1 0 0 -no_vol_cor
ddscatcli -CSHAPE ELLIPSOID -AEFF "0.10011394279690265 0.10011394279690265 1 'LIN'" -WAVELENGTHS "0.5 0.5 1 'LIN'" -DIEL "diel/m1.302265942870714_0.07678923076154483" -MEM_ALLOW "32 32 32" -SHPAR "16 32 8" -TOL 1e-4 -CMDSOL QMRCCG -CALPHA LATTDR -IORTH 2 -POL_E01 "(0,0) (1,0) (0,0)" -run
# @case: ellipsoid_ldr_qmr_both_pol_arbitrary_orient
# @tol: 10 16
# @tol_res: 10 16
#----------Ellipsoid (non-symmetric both polarizations with arbitrary orientation)----------#
adda -lambda 0.5 -shape ellipsoid 2.0 0.5 -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -scat dr -prop 1 0 0 -no_vol_cor -orient 12 25 97
ddscatcli -CSHAPE ELLIPSOID -AEFF "0.10011394279690265 0.10011394279690265 1 'LIN'" -WAVELENGTHS "0.5 0.5 1 'LIN'" -DIEL "diel/m1.302265942870714_0.07678923076154483" -MEM_ALLOW "32 32 32" -SHPAR "16 32 8" -TOL 1e-4 -CMDSOL QMRCCG -CALPHA LATTDR -IORTH 2 -POL_E01 "(0,0) (1,0) (0,0)" -ROT_BETA "25.814894999686825 25.814894999686825 1" -ROT_THETA "108.32456363184403 108.32456363184403 1" -ROT_PHI "3.110136148583404 3.110136148583404 1" -ETASCA 10 -run
# @case: ellipsoid_ldr_qmr_perp_pol_fullrotation_by_90deg
# @tol: 10 16
# @tol_res: 10 16
#----------Ellipsoid (non-symmetric perpendicular-polarization) with full rotation by 90 degrees of IFDDA----------#
adda -lambda 0.5 -shape ellipsoid 2.0 0.5 -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -scat dr -prop 1 0 0 -sym enf -no_vol_cor -orient 0 90 0
ifdda -lambda 500 -object ellipsoid 100 200 50 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 32 -ninitest 0 -prop 90 0 -orient 90 90 90
ddscatcli -CSHAPE ELLIPSOID -AEFF "0.10011394279690265 0.10011394279690265 1 'LIN'" -WAVELENGTHS "0.5 0.5 1 'LIN'" -DIEL "diel/m1.302265942870714_0.07678923076154483" -MEM_ALLOW "32 32 32" -SHPAR "16 32 8" -TOL 1e-4 -CMDSOL QMRCCG -CALPHA LATTDR -IORTH 1 -POL_E01 "(0,0) (1,0) (0,0)" -ROT_BETA '90.0 90.0 1' -ROT_THETA '90.0 90.0 1' -ROT_PHI '-90.0 -90.0 1' -ETASCA 10 -run
# @case: ellipsoid_ldr_qmr_perp_pol
# @tol: 10 16
# @tol_res: 10 16
#----------Ellipsoid (non-symmetric perpendicular-polarization)----------#
adda -lambda 0.5 -shape ellipsoid 2.0 0.5 -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -scat dr -prop 1 0 0 -sym enf -no_vol_cor
ifdda -lambda 500 -object ellipsoid 100 200 50 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 32 -ninitest 0 -prop 90 0
ddscatcli -CSHAPE ELLIPSOID -AEFF "0.10011394279690265 0.10011394279690265 1 'LIN'" -WAVELENGTHS "0.5 0.5 1 'LIN'" -DIEL "diel/m1.302265942870714_0.07678923076154483" -MEM_ALLOW "32 32 32" -SHPAR "16 32 8" -TOL 1e-4 -CMDSOL QMRCCG -CALPHA LATTDR -IORTH 1 -POL_E01 "(0,0) (1,0) (0,0)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -run
# @case: ellipsoid_ldr_qmr_par_pol
# @tol: 10 16
# @tol_res: 10 16
#----------Ellipsoid (non-symmetric parallel-polarization)----------#
adda -lambda 0.5 -shape ellipsoid 2.0 0.5 -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -scat dr -prop 1 0 0 -no_vol_cor
ifdda -lambda 500 -object ellipsoid 100 200 50 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 32 -ninitest 0 -prop 90 0 -beam pwavelinear 1 1
ddscatcli -CSHAPE ELLIPSOID -AEFF "0.10011394279690265 0.10011394279690265 1 'LIN'" -WAVELENGTHS "0.5 0.5 1 'LIN'" -DIEL "diel/m1.302265942870714_0.07678923076154483" -MEM_ALLOW "32 32 32" -SHPAR "16 32 8" -TOL 1e-4 -CMDSOL QMRCCG -CALPHA LATTDR -IORTH 1 -POL_E01 "(0,0) (0,0) (-1,0)" -run
# @case: arbitrary_fcd_bicgstab_rcp_pol
# @tol: 10 16
# @tol_res: 10 16
#----------Arbitrary shape (helix) for right circular polarization----------#
ddscatcli -CSHAPE FROM_FILE -AEFF "0.10011394279690265 0.10011394279690265 1 'LIN'" -WAVELENGTHS "0.5 0.5 1 'LIN'" -DIEL "diel/m1.302265942870714_0.07678923076154483" -MEM_ALLOW "32 32 32" -SHPAR "16 32 8" -TOL 1e-4 -CMDSOL PBCGST -CALPHA FLTRCD -IORTH 1 -POL_E01 "(0,0) (1,0) (0,-1)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -ETASCA 10 -run
adda -lambda 0.5 -shape read shape.dat -size 0.14048319255318795 -iter bicgstab -m 1.302265942870714 0.07678923076154483 -eps 4 -pol fcd -int fcd -init_field zero -scat dr -prop 1 0 0 -no_vol_cor -scat_matr none -beam besselM 0 0 0 0 0 0.7071067811865475 0 0 +0.7071067811865475 0 -sym enf
# @case: arbitrary_fcd_bicgstab_lcp_pol
# @tol: 10 16
# @tol_res: 10 16
#----------Arbitrary shape (helix) for left circular polarization----------#
ddscatcli -CSHAPE FROM_FILE -AEFF "0.10011394279690265 0.10011394279690265 1 'LIN'" -WAVELENGTHS "0.5 0.5 1 'LIN'" -DIEL "diel/m1.302265942870714_0.07678923076154483" -MEM_ALLOW "32 32 32" -SHPAR "16 32 8" -TOL 1e-4 -CMDSOL PBCGST -CALPHA FLTRCD -IORTH 1 -POL_E01 "(0,0) (1,0) (0,1)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -ETASCA 10 -run
adda -lambda 0.5 -shape read shape.dat -size 0.14048319255318795 -iter bicgstab -m 1.302265942870714 0.07678923076154483 -eps 4 -pol fcd -int fcd -init_field zero -scat dr -prop 1 0 0 -no_vol_cor -scat_matr none -beam besselM 0 0 0 0 0 0.7071067811865475 0 0 -0.7071067811865475 0 -sym enf
# @case: cylinder_ldr_qmr_arbitrary_prop
# @tol: 10 16
# @tol_res: 10 16
#----------Arbitrary propagation direction----------#
adda -lambda 0.5 -shape cylinder 0.5 -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -no_vol_cor -prop 0.49673176489215404 0.28678821817552297 0.8191520442889918 -sym enf -scat dr
ifdda -lambda 500 -object cylinder 100 100 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 16 -ninitest 0 -prop 35 30
# @case: cylinder_ldr_qmr_x_pol
# @tol: 10 16
# @tol_res: 10 16
#----------Linear e_x-polarisation direction----------#
adda -lambda 0.5 -shape cylinder 0.5 -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -no_vol_cor -prop 0.49673176489215404 0.28678821817552297 0.8191520442889918 -scat dr
ifdda -lambda 500 -object cylinder 100 100 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 16 -ninitest 0 -prop 35 30 -beam pwavelinear 1 1
# @case: ellipsoid_ldr_qmr_arbitrary_poldir_x_prop
# @tol: 10 16
# @tol_res: 10 16
#----------Linear arbitrary-polarisation direction with prop along x----------#
ifdda -lambda 500 -object ellipsoid 100 200 50 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 32 -ninitest 0 -prop 90 0 -beam pwavelinear 0.2 1
ddscatcli -CSHAPE ELLIPSOID -AEFF "0.10011394279690265 0.10011394279690265 1 'LIN'" -WAVELENGTHS "0.5 0.5 1 'LIN'" -DIEL "diel/m1.302265942870714_0.07678923076154483" -MEM_ALLOW "32 32 32" -SHPAR "16 32 8" -TOL 1e-4 -CMDSOL QMRCCG -CALPHA LATTDR -IORTH 1 -POL_E01 "(0,0) (0.8944271909999159,0) (-0.4472135954999579,0)" -run
adda -lambda 0.5 -shape ellipsoid 2.0 0.5 -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -scat dr -prop 1 0 0 -no_vol_cor -orient -90 26.56505117707799 +90 -sym enf
# @case: ellipsoid_ldr_qmr_arbitrary_poldir_bessel_x_prop
# @tol: 10 16
# @tol_res: 10 16
#----------Linear arbitrary-polarisation direction with prop along x----------#
ifdda -lambda 500 -object ellipsoid 100 200 50 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 32 -ninitest 0 -prop 90 0 -beam pwavelinear 0.2 1
ddscatcli -CSHAPE ELLIPSOID -AEFF "0.10011394279690265 0.10011394279690265 1 'LIN'" -WAVELENGTHS "0.5 0.5 1 'LIN'" -DIEL "diel/m1.302265942870714_0.07678923076154483" -MEM_ALLOW "32 32 32" -SHPAR "16 32 8" -TOL 1e-4 -CMDSOL QMRCCG -CALPHA LATTDR -IORTH 1 -POL_E01 "(0,0) (0.8944271909999159,0) (-0.4472135954999579,0)" -run
adda -lambda 0.5 -shape ellipsoid 2.0 0.5 -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -scat dr -prop 1 0 0 -no_vol_cor -beam besselM 0 0 0 0 0.4472135954999579 0.8944271909999159 -sym enf
# @case: ellipsoid_ldr_qmr_arbitrary_poldir_z_prop
# @tol: 10 16
# @tol_res: 10 16
#----------Linear arbitrary-polarisation direction with prop along z----------#
ifdda -lambda 500 -object ellipsoid 100 200 50 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 32 -ninitest 0 -prop 0 0 -beam pwavelinear 0.2 1
adda -lambda 0.5 -shape ellipsoid 2.0 0.5 -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -scat dr -prop 0 0 1 -no_vol_cor -orient 0 0 26.56505117707799 -sym enf
# @case: sphere_rrc_qmr_diagonal_anisotropy_eta=12
# @tol: 10 16
# @tol_res: 0 2
#----------Diagonal anisotropy eta=12----------#
adda -lambda 0.5 -shape sphere -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 1.1 0.0 1.2 0.0 -eps 12 -pol rrc -grid 16 -init_field zero -no_vol_cor -anisotr -scat dr -sym enf 
ifdda -lambda 500 -object sphere 100 -methodeit QMRCLA -tolinit 1.d-12 -polarizability RR -nnnr 16 -ninitest 0 -trope 1.69 0.2 0.0 0.0 0.0 0.0 0.0 0.0 1.21 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.44 0.0
# @case: sphereinbox_ldr_qmr_eps=12
# @tol: 10 16
# @tol_res: 0 2
#----------Inhomogeneous sphere in a vacuum cube with eps=12----------#
adda -lambda 0.5 -shape spherebox 1 -size 0.2 -iter qmr -m 1.000000000000001 0.0 1.302265942870714 0.07678923076154483 -eps 12 -pol ldr -grid 16 -init_field zero -no_vol_cor -scat dr
ifdda -lambda 500 -object sphere 100 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-12 -polarizability LS -nnnr 16 -ninitest 0 -near_field 0 0 1
# @case: sphere_rrc_qmr_diagonal_anisotropy_eta=4
# @tol: 4 7
# @tol_res: 0 2
#----------Diagonal anisotropy eta=4----------#
adda -lambda 0.5 -shape sphere -size 1.0 -iter bicgstab -m 1.302265942870714 0.07678923076154483 1.1 0.0 1.2 0.0 -eps 4 -pol rrc -grid 16 -init_field zero -no_vol_cor -anisotr -prop 0.49673176489215404 0.28678821817552297 0.8191520442889918 -sym enf -scat dr
ifdda -lambda 500 -object sphere 500 -methodeit BICGSTAB -tolinit 1.d-4 -polarizability RR -nnnr 16 -ninitest 0 -trope 1.69 0.2 0.0 0.0 0.0 0.0 0.0 0.0 1.21 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.44 0.0 -prop 35 30
# @case: sphereinbox_ldr_qmr_eps=4
# @tol: 4 7
# @tol_res: 0 2
#----------Inhomogeneous sphere in a vacuum cube eta=4----------#
adda -lambda 0.5 -shape spherebox 1 -size 1.0 -iter bicgstab -m 1.000000000000001 0.0 1.302265942870714 0.07678923076154483 -eps 4 -pol rrc -grid 16 -init_field zero -no_vol_cor -scat dr
ifdda -lambda 500 -object sphere 500 -methodeit BICGSTAB -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability RR -nnnr 16 -ninitest 0 -near_field 0 0 1
# @case: sphere_cm_qmr_scat_fin
# @tol_ext: 10 16
# @tol_abs: 2 4
# @tol_res: 10 16
#----------Scat fin----------#
adda -lambda 0.5 -shape sphere -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol cm -grid 16 -init_field zero -no_vol_cor -scat fin
ifdda -lambda 500 -object sphere 100 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability CM -nnnr 16 -ninitest 0
# @case: arbitrary_fcd_bicgstab_rcp_pol_targetinbox
# @tol: 4 7
# @tol_res: 0 2
# @skip_pairs: adda ddscat
#----------Arbitrary shape (helix) for right circular polarization----------#
ifdda -lambda 500 -nnnr 30 -object arbitrary shape_ifdda.dat -methodeit BICGSTAB -tolinit 1.d-4 -polarizability FG -ninitest 0 -prop 90 0 -beam pwavecircular 1
ddscatcli -CSHAPE FROM_FILE -AEFF "0.10011394279690265 0.10011394279690265 1 'LIN'" -WAVELENGTHS "0.5 0.5 1 'LIN'" -DIEL "diel/m1.302265942870714_0.07678923076154483" -MEM_ALLOW "32 32 32" -SHPAR "16 32 8" -TOL 1e-4 -CMDSOL PBCGST -CALPHA FLTRCD -IORTH 1 -POL_E01 "(0,0) (1,0) (0,-1)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -ETASCA 10 -run
adda -lambda 0.5 -shape read shape.dat -size 0.14048319255318795 -iter bicgstab -m 1.302265942870714 0.07678923076154483 -eps 4 -pol fcd -int fcd -init_field zero -scat dr -prop 1 0 0 -no_vol_cor -scat_matr none -beam besselM 0 0 0 0 0 0.7071067811865475 0 0 0.7071067811865475 0 -sym enf
# @case: arbitrary_fcd_bicgstab_lcp_pol_targetinbox
# @tol: 4 7
# @tol_res: 0 2 
# @skip_pairs: adda ddscat 
#----------Arbitrary shape (helix) for left circular polarization----------#
ifdda -lambda 500 -nnnr 30 -object arbitrary shape_ifdda.dat -methodeit BICGSTAB -tolinit 1.d-4 -polarizability FG -ninitest 0 -prop 90 0 -beam pwavecircular -1
ddscatcli -CSHAPE FROM_FILE -AEFF "0.10011394279690265 0.10011394279690265 1 'LIN'" -WAVELENGTHS "0.5 0.5 1 'LIN'" -DIEL "diel/m1.302265942870714_0.07678923076154483" -MEM_ALLOW "32 32 32" -SHPAR "16 32 8" -TOL 1e-4 -CMDSOL PBCGST -CALPHA FLTRCD -IORTH 1 -POL_E01 "(0,0) (1,0) (0,1)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -ETASCA 10 -run
adda -lambda 0.5 -shape read shape.dat -size 0.14048319255318795 -iter bicgstab -m 1.302265942870714 0.07678923076154483 -eps 4 -pol fcd -int fcd -init_field zero -scat dr -prop 1 0 0 -no_vol_cor -scat_matr none -beam besselM 0 0 0 0 0 0.7071067811865475 0 0 -0.7071067811865475 0 -sym enf
# @case: sphere_rrc_qmr_intfield_force
# @tol: 10 16
# @tol_res: 10 16 
# @need_int
# @tol_int: 10 16
# @tol_force: 10 16
# @need_force
#----------Full precision internal field + force----------#
adda -lambda 0.5 -shape sphere -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol rrc -grid 16 -init_field zero -no_vol_cor -scat dr -store_int_field -Cpr
ifdda -lambda 500 -object sphere 100 -methodeit QMRCLA -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability RR -nnnr 16 -ninitest 0 -near_field 1 1 0 -save_data 2 -nforce 1 1 0 0
# @case: spherebox_ldr_bicgstab_intfield(ldr)_force
# @tol: 4 7
# @tol_res: 0 2 
# @need_int
# @tol_int: 1 3
# @tol_force: 4 7
# @need_force
#----------Solver precision internal field + force (inhomogeneous)----------#
adda -lambda 0.5 -shape spherebox 1 -size 1.0 -iter bicgstab -m 1.000000000000001 0.0 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -no_vol_cor -scat dr -store_int_field -Cpr
ifdda -lambda 500 -object sphere 500 -methodeit BICGSTAB -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 16 -ninitest 0 -near_field 1 1 1 -save_data 2 -nforce 1 1 0 0
# @case: spherebox_ldr_bicgstab_intfield(ldr)
# @tol: 4 7
# @tol_res: 0 2 
# @need_int
# @tol_int: 1 3
#----------Solver precision internal field (inhomogeneous)----------#
adda -lambda 0.5 -shape spherebox 1 -size 1.0 -iter bicgstab -m 1.000000000000001 0.0 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -no_vol_cor -scat dr -store_int_field
ifdda -lambda 500 -object sphere 500 -methodeit BICGSTAB -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 16 -ninitest 0 -near_field 1 1 1 -save_data 2 
# @case: spherebox_ldr_bicgstab_force
# @tol: 4 7
# @tol_res: 0 2 
# @tol_force: 4 7
# @need_force
#----------Solver precision force (inhomogeneous)----------#
adda -lambda 0.5 -shape spherebox 1 -size 1.0 -iter bicgstab -m 1.000000000000001 0.0 1.302265942870714 0.07678923076154483 -eps 4 -pol ldr -grid 16 -init_field zero -no_vol_cor -scat dr -Cpr
ifdda -lambda 500 -object sphere 500 -methodeit BICGSTAB -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability LS -nnnr 16 -ninitest 0 -near_field 1 1 1 -nforce 1 1 0 0
# @case: sphere_rrc_qmr_torque_etasca=0.01
# @tol: 10 16
# @tol_res: 10 16 
# @need_torque
# @tol_torque: 2 4
#----------Max possible precision for torque----------#
ifdda -lambda 500 -object sphere 99.5540512465 -methodeit BICGSTAB -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability FG -nnnr 15 -ninitest 0 -nforce 1 1 1 1 -prop 90 0 -beam pwavecircular -1
ddscatcli -CMDSOL PBCGST -CALPHA FLTRCD -MEM_ALLOW "15 15 15" -CSHAPE ELLIPSOID -SHPAR "15 15 15" -DIEL "diel/m1.302265942870714_0.07678923076154483" -WAVELENGTHS "0.5 0.5 1 'LIN'" -AEFF "0.1 0.1 1 'LIN'" -TOL 1.e-4 -IORTH 1 -POL_E01 "(0,0) (1,0) (0,1)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -CMDTRQ DOTORQ -ETASCA 0.01 -run
# @case: sphere_rrc_qmr_torque_etasca=10
# @tol: 10 16
# @tol_res: 10 16 
# @need_torque
# @tol_torque: 0 1
#----------Low precision for torque----------#
ifdda -lambda 500 -object sphere 99.5540512465 -methodeit BICGSTAB -epsmulti 1.69 0.2 -tolinit 1.d-4 -polarizability FG -nnnr 15 -ninitest 0 -nforce 1 1 1 1 -prop 90 0 -beam pwavecircular -1
ddscatcli -CMDSOL PBCGST -CALPHA FLTRCD -MEM_ALLOW "15 15 15" -CSHAPE ELLIPSOID -SHPAR "15 15 15" -DIEL "diel/m1.302265942870714_0.07678923076154483" -WAVELENGTHS "0.5 0.5 1 'LIN'" -AEFF "0.1 0.1 1 'LIN'" -TOL 1.e-4 -IORTH 1 -POL_E01 "(0,0) (1,0) (0,1)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -CMDTRQ DOTORQ -ETASCA 10 -run
# @case: sphere_fcd_qmr_mueller_matrix
# @tol: 10 16
# @tol_res: 10 16
# @need_mueller
# @tol_mueller: 10 16
#----------Mueller matrix----------#
adda -lambda 0.5 -shape sphere -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol fcd -int fcd -grid 15 -init_field zero -scat dr -prop 1 0 0 -ntheta 180 -scat_matr muel
ddscatcli -CMDSOL QMRCCG -CALPHA FLTRCD -MEM_ALLOW "15 15 15" -CSHAPE ELLIPSOID -SHPAR "15 15 15" -DIEL "diel/m1.302265942870714_0.07678923076154483" -WAVELENGTHS "0.5 0.5 1 'LIN'" -AEFF "0.1 0.1 1 'LIN'" -TOL 1.e-4 -IORTH 2 -POL_E01 "(0,0) (1,0) (0,0)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -CMDTRQ NOTORQ -ETASCA 10 -CMDFRM LFRAME -NPLANES 1 -PLANE "0 0 180 1" -NSMELTS 16 -SMELTS_LIST "11 12 13 14 21 22 23 24 31 32 33 34 41 42 43 44" -run
# @case: bisphere_fcd_qmr
# @tol: 10 16
# @tol_res: 10 16
#----------Bisphere----------#
adda -lambda 0.5 -shape bisphere 1 -size 0.2 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol fcd -int fcd -grid 15 -init_field zero -scat dr -prop 0 0 1 -no_vol_cor
ifdda -lambda 500 -object nspheres 2 100 100 -methodeit QMRCLA -epsmulti 1.69 0.2 1.69 0.2 -tolinit 1.d-4 -polarizability FG -nnnr 30 -ninitest 0 -prop 0 0 -pos 0 0 0 0 0 200
# @case: bisphere_fcd_qmr_2
# @tol: 10 16
# @tol_res: 10 16
#----------Bisphere 2----------#
adda -lambda 0.5 -shape bisphere 1 -eq_rad 0.1 -iter qmr -m 1.302265942870714 0.07678923076154483 -eps 4 -pol fcd -int fcd -grid 15 -init_field zero -scat dr -prop 0 0 1
ddscatcli -CMDSOL QMRCCG -CALPHA FLTRCD -MEM_ALLOW "30 30 30" -CSHAPE ELLIPSO_2 -SHPAR "15 15 15" -NCOMP 2 -DIEL "diel/m1.302265942870714_0.07678923076154483" -DIEL "diel/m1.302265942870714_0.07678923076154483" -WAVELENGTHS "0.5 0.5 1 'LIN'" -AEFF "0.1 0.1 1 'LIN'" -TOL 1.e-4 -IORTH 1 -POL_E01 "(0,0) (1,0) (0,0)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -CMDTRQ NOTORQ -ETASCA 10 -run
# @case: coated_fcd_qmr_empty
# @tol: 4 7
# @tol_res: 0 2
#----------Empty coated sphere (inhomogeneous)----------#
adda -lambda 0.5 -shape coated 0.5 -eq_rad 0.1 -iter qmr -m 1.302265942870714 0.07678923076154483 1.0000000001 0.0 -eps 4 -pol fcd -int fcd -grid 15 -init_field zero -scat dr -prop 0 0 1
ifdda -lambda 500 -object concentricsphere 2 49.77702562325 99.5540512465 -methodeit QMRCLA -epsmulti 1.00000001 0.0 1.69 0.2 -tolinit 1.d-4 -polarizability FG -nnnr 15 -ninitest 0 -prop 0 0
ddscatcli -CMDSOL QMRCCG -CALPHA FLTRCD -MEM_ALLOW "15 15 15" -CSHAPE ONIONSHEL -SHPAR "1 15 0.5" -NCOMP 3 -DIEL "diel/m1.0_0.0" -DIEL "diel/m1.302265942870714_0.07678923076154483" -DIEL "diel/m1.302265942870714_0.07678923076154483" -WAVELENGTHS "0.5 0.5 1 'LIN'" -AEFF "0.1 0.1 1 'LIN'" -TOL 1.e-4 -IORTH 1 -POL_E01 "(0,0) (1,0) (0,0)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -CMDTRQ NOTORQ -ETASCA 10 -run
# @case: sphere_ani_diag_fcd_bicgstab
# @tol: 4 7
# @tol_res: 0 2
#----------Ani sphere (diagonal)----------#
ddscatcli -CMDSOL PBCGST -CALPHA FLTRCD -MEM_ALLOW "15 15 15" -CSHAPE ANIELLIPS -SHPAR "15 15 15" -NCOMP 3 -DIEL "diel/m1.302265942870714_0.07678923076154483" -DIEL "diel/m1.50_0.00" -DIEL "diel/m1.313_0.00" -WAVELENGTHS "0.5 0.5 1 'LIN'" -AEFF "0.1 0.1 1 'LIN'" -TOL 1.e-4 -IORTH 2 -POL_E01 "(0,0) (1,0) (0,0)" -ROT_BETA "0 0 1" -ROT_THETA "0 0 1" -ROT_PHI "0 0 1" -CMDTRQ NOTORQ -ETASCA 10 -run
adda -lambda 0.5 -shape sphere -eq_rad 0.1 -iter bicgstab -m 1.302265942870714 0.07678923076154483 1.5 0.0 1.313 0.0 -eps 4 -pol fcd -int fcd -grid 15 -init_field zero -anisotr -prop 1 0 0 -scat dr
# IFDDA is not possible: "Polarizability should be CM or RR with anisotropy"