Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion femmt/optimization/io.py
Original file line number Diff line number Diff line change
Expand Up @@ -324,7 +324,8 @@ def single_reluctance_model_simulation(reluctance_input: IoReluctanceModelInput)
iso_core_top=reluctance_input.insulations.core_top, iso_core_bot=reluctance_input.insulations.core_bot,
frequency=fft_frequency, litz_wire_material_name='Copper', temperature=reluctance_input.temperature)

p_winding += proximity_factor_assumption * winding_dc_resistance * reluctance_input.fft_amplitude_list[count] ** 2
# factor 0.5 due to RMS value needed, but fft returns peak values
p_winding += proximity_factor_assumption * winding_dc_resistance * 0.5 * reluctance_input.fft_amplitude_list[count] ** 2

p_loss = p_winding + p_core

Expand Down
14 changes: 7 additions & 7 deletions femmt/optimization/ito.py
Original file line number Diff line number Diff line change
Expand Up @@ -378,8 +378,8 @@ def single_reluctance_model_simulation(reluctance_input: ItoReluctanceModelInput
r_1=reluctance_input.insulations.iso_window_top_core_left,
frequency=fft_frequency, winding_area=winding_area_1_top,
litz_wire_material_name='Copper', temperature=reluctance_input.temperature)

p_winding_1_top += proximity_factor_1_top * primary_resistance_top * reluctance_input.fft_amplitude_list_1[count] ** 2
# factor 0.5 due to RMS value needed, but fft returns peak values
p_winding_1_top += proximity_factor_1_top * primary_resistance_top * 0.5 * reluctance_input.fft_amplitude_list_1[count] ** 2

if number_bot_prim_turns_per_column > reluctance_input.turns_1_bot:
winding_area_1_bot = 2 * reluctance_input.litz_dict_1["conductor_radii"] * \
Expand Down Expand Up @@ -409,9 +409,9 @@ def single_reluctance_model_simulation(reluctance_input: ItoReluctanceModelInput
window_h=reluctance_input.window_h_bot,
iso_core_top=reluctance_input.insulations.iso_window_bot_core_top, iso_core_bot=reluctance_input.insulations.iso_window_bot_core_bot,
frequency=fft_frequency, litz_wire_material_name='Copper', temperature=reluctance_input.temperature)

p_winding_1_bot_inner = proximity_factor_1_bot_inner * primary_resistance_bot_inner * reluctance_input.fft_amplitude_list_1[count] ** 2
p_winding_1_bot_outer = proximity_factor_1_bot_outer * primary_resistance_bot_outer * reluctance_input.fft_amplitude_list_1[count] ** 2
# factor 0.5 due to RMS value needed, but fft returns peak values
p_winding_1_bot_inner = proximity_factor_1_bot_inner * primary_resistance_bot_inner * 0.5 * reluctance_input.fft_amplitude_list_1[count] ** 2
p_winding_1_bot_outer = proximity_factor_1_bot_outer * primary_resistance_bot_outer * 0.5 * reluctance_input.fft_amplitude_list_1[count] ** 2

p_winding_1_bot += p_winding_1_bot_inner + p_winding_1_bot_outer

Expand All @@ -421,8 +421,8 @@ def single_reluctance_model_simulation(reluctance_input: ItoReluctanceModelInput
litz_wire_name=reluctance_input.litz_wire_name_2, number_turns=reluctance_input.turns_2_bot, window_h=reluctance_input.window_h_bot,
iso_core_top=reluctance_input.insulations.iso_window_bot_core_top, iso_core_bot=reluctance_input.insulations.iso_window_bot_core_bot,
frequency=fft_frequency, litz_wire_material_name='Copper', temperature=reluctance_input.temperature)

p_winding_2 += proximity_factor_assumption_2 * secondary_resistance * reluctance_input.fft_amplitude_list_2[count] ** 2
# factor 0.5 due to RMS value needed, but fft returns peak values
p_winding_2 += proximity_factor_assumption_2 * secondary_resistance * 0.5 * reluctance_input.fft_amplitude_list_2[count] ** 2

p_loss_total = p_hyst + p_winding_1_top + p_winding_1_bot + p_winding_2

Expand Down
12 changes: 6 additions & 6 deletions femmt/optimization/sto.py
Original file line number Diff line number Diff line change
Expand Up @@ -442,7 +442,7 @@ def single_reluctance_model_simulation(reluctance_input: StoReluctanceModelInput
frequency=fft_frequency, winding_area=winding_area_1_top,
litz_wire_material_name='Copper', temperature=reluctance_input.temperature)

p_winding_1_top += proximity_factor_1_top * primary_resistance_top * reluctance_input.fft_amplitude_list_1[count] ** 2
p_winding_1_top += proximity_factor_1_top * primary_resistance_top * 0.5 * reluctance_input.fft_amplitude_list_1[count] ** 2

if number_bot_prim_turns_per_column > reluctance_input.turns_1_bot:
winding_area_1_bot = 2 * reluctance_input.primary_litz_dict["conductor_radii"] * \
Expand Down Expand Up @@ -472,9 +472,9 @@ def single_reluctance_model_simulation(reluctance_input: StoReluctanceModelInput
window_h=reluctance_input.window_h_bot,
iso_core_top=reluctance_input.insulations.iso_window_bot_core_top, iso_core_bot=reluctance_input.insulations.iso_window_bot_core_bot,
frequency=fft_frequency, litz_wire_material_name='Copper', temperature=reluctance_input.temperature)

p_winding_1_bot_inner = proximity_factor_1_bot_inner * primary_resistance_bot_inner * reluctance_input.fft_amplitude_list_1[count] ** 2
p_winding_1_bot_outer = proximity_factor_1_bot_outer * primary_resistance_bot_outer * reluctance_input.fft_amplitude_list_1[count] ** 2
# factor 0.5 due to RMS value needed, but fft returns peak values
p_winding_1_bot_inner = proximity_factor_1_bot_inner * primary_resistance_bot_inner * 0.5 * reluctance_input.fft_amplitude_list_1[count] ** 2
p_winding_1_bot_outer = proximity_factor_1_bot_outer * primary_resistance_bot_outer * 0.5 * reluctance_input.fft_amplitude_list_1[count] ** 2

p_winding_1_bot += p_winding_1_bot_inner + p_winding_1_bot_outer

Expand All @@ -484,8 +484,8 @@ def single_reluctance_model_simulation(reluctance_input: StoReluctanceModelInput
litz_wire_name=reluctance_input.litz_wire_name_2, number_turns=reluctance_input.turns_2_bot, window_h=reluctance_input.window_h_bot,
iso_core_top=reluctance_input.insulations.iso_window_bot_core_top, iso_core_bot=reluctance_input.insulations.iso_window_bot_core_bot,
frequency=fft_frequency, litz_wire_material_name='Copper', temperature=reluctance_input.temperature)

p_winding_2 += proximity_factor_assumption_2 * secondary_resistance * reluctance_input.fft_amplitude_list_2[count] ** 2
# factor 0.5 due to RMS value needed, but fft returns peak values
p_winding_2 += proximity_factor_assumption_2 * secondary_resistance * 0.5 * reluctance_input.fft_amplitude_list_2[count] ** 2

p_loss_total = p_hyst + p_winding_1_top + p_winding_1_bot + p_winding_2

Expand Down
Loading