示例#1
0
# Saving directories
vacuum_folder = "AuMieSphere/AuMie/7)Diameters/WLen4560"
water_folder = "AuMieMediums/AllWater"
glassnwater_folder = "AuMieMediums/GlassNWater"
marian_folder = "AuMieSphere/AuMie/7)Diameters/Marians"

home = vs.get_home()

#%% LOAD VACUUM DATA

vacuum_path = os.path.join(home, vacuum_folder)
vacuum_file = lambda f, s: os.path.join(vacuum_path, f, s)

vacuum_series = os.listdir(vacuum_path)
vacuum_series = vu.filter_by_string_must(vacuum_series, "SC")
vacuum_series = vu.sort_by_number(vacuum_series, 0)

vacuum_data = []
vacuum_params = []
for s in vacuum_series:
    vacuum_data.append(np.loadtxt(vacuum_file(s, "Results.txt")))
    vacuum_params.append(vs.retrieve_footer(vacuum_file(s, "Results.txt")))
vacuum_header = vs.retrieve_header(vacuum_file(s, "Results.txt"))

vacuum_params = [vu.fix_params_dict(p) for p in vacuum_params]

#%% LOAD WATER DATA

water_path = os.path.join(home, water_folder)
water_file = lambda f, s: os.path.join(water_path, f, s)
示例#2
0
import PyMieScatt as ps
import v_analysis as va
from v_materials import import_medium
import v_save as vs
import v_utilities as vu

#%% PARAMETERS

# Saving directories
folder = [
    "AuMieSphere/AuMie/13)TestPaper/4)PaperJCFit/TestSTFactor/AllVac450800"
]
home = vs.get_home()

# Sorting and labelling data series
sorting_function = [lambda l: vu.sort_by_number(l, -2)]
# def special_label(s):
#     if "5" in s:
#         return "Mie"
#     else:
#         return ""
series_label = [lambda s: f"Meep factor {vu.find_numbers(s)[-2]}"]
series_must = [""]  # leave "" per default
series_mustnt = [""]  # leave "" per default
series_column = [1]

# Scattering plot options
plot_title = "JC Au 103 nm sphere in vacuum"
series_colors = [plab.cm.Reds]
series_linestyles = ["solid"]
plot_make_big = False
示例#3
0
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.pylab as plab
import os
import v_save as vs
import v_utilities as vu

#%% PARAMETERS

# Saving directories
folder = "AuMieMediums/AllWaterTest/TestSecTime/Test103Res2SecTime"
home = vs.get_home()

# Sorting and labelling data series
sorting_function = lambda l: vu.sort_by_number(l, 2)
series_label = lambda s: f"Second Time Factor x{vu.find_numbers(s)[2]}"
recognize_string = "Test"  # leave "" per default

#%% LOAD DATA

path = os.path.join(home, folder)
file = lambda f, s: os.path.join(path, f, s)

series = os.listdir(path)
series = vu.filter_by_string_must(series, recognize_string)
series = sorting_function(series)

data = []
params = []
for s in series:
import v_analysis as va
import v_save as vs
import v_utilities as vu

#%% PARAMETERS

# Saving directories
folder = [
    "AuMieSphere/AuMie/10)MaxRes/Max103FUMixRes",
    "AuMieSphere/AuMie/10)MaxRes/Max103FUMixRes"
]
home = vs.get_home()

# Sorting and labelling data series
sorting_function = [
    lambda ls: vu.sort_by_number(ls, -1),
    lambda ls: vu.sort_by_number(ls, -1),
]
series_label = [
    lambda s: f"Meep Resolution {vu.find_numbers(s)[-1]}",
    lambda s: "Mie Theory"
]
series_must = ["", ""]  # leave "" per default
series_column = [1, 2]

# Scattering plot options
plot_title = "Scattering for 103 nm Au sphere in vacuum"
series_colors = [plab.cm.Reds, plab.cm.Reds]
series_linestyles = ["solid", "dashed"]
plot_make_big = True
plot_file = lambda n: os.path.join(home, "DataAnalysis", "VacuumMax103FUMixRes"
示例#5
0
                    2 * rj * 1e3 * fj,  # Diameter (nm)
                    nMedium=ij,  # Refraction Index of Medium
                    asDict=True)['Qsca']
                for wl, fq, fqm in zip(wlenj, freqj, freqmeepj)
            ]))

#%% LOAD MARIAN'S DATA

marian_path = os.path.join(home, marian_folder)
marian_file = lambda s: os.path.join(marian_path, s)

marian_series = os.listdir(marian_path)

marian_exp_series = vu.filter_by_string_must(marian_series, "exp")
marian_exp_series = vu.filter_by_string_must(marian_exp_series, "glass")
marian_exp_series = vu.sort_by_number(marian_exp_series)

marian_mie_series = vu.filter_by_string_must(marian_series, "mie")
marian_mie_series = vu.sort_by_number(marian_mie_series)

marian_exp_data = []
for s in marian_exp_series:
    marian_exp_data.append(np.loadtxt(marian_file(s)))

marian_mie_data = []
for s in marian_mie_series:
    marian_mie_data.append(np.loadtxt(marian_file(s)))

#%% GET MAX WAVELENGTH

max_wlen = []
# Saving directories
folder = [
    "Test/TestRAM/TestRAMGeneral", "Test/TestRAM/TestRAMGeneral",
    "Test/TestRAM/TestRAMGeneral"
]
home = vs.get_home()

# Parameter for the test
test_param_string = "n_processes"
test_param_in_params = True
test_param_position = -1
test_param_label = "Number of subprocesses"

# Sorting and labelling data series
# sorting_function = [lambda l : l]*3
sorting_function = [lambda l: vu.sort_by_number(l, -1), *[lambda l: l] * 2]
series_label = [
    lambda s: f"Parallel NP {vu.find_numbers(s)[0]}", lambda s: "Console",
    lambda s: "Spyder"
]
series_must = ["Parallel", "Console", "Spyder"]  # leave "" per default
series_mustnt = ["SWAP"] * 3  # leave "" per default
# series_must = [""]*2 # leave "" per default
# series_mustnt = [""]*2 # leave "" per default
series_column = [1] * 3

# Scattering plot options
plot_title = "Au 103 nm sphere"
series_legend = ["Parallel", "Console", "Spyder"]
# series_legend = ["Vacuum", "Water"]
# series_colors = [plab.cm.Reds, plab.cm.Reds]