Skip to content
Merged
Show file tree
Hide file tree
Changes from 45 commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
be1a1d8
physical group for electrostatci simulation
Oct 16, 2024
dc044f8
first step for integrating electrostatic simulation in FEMMT. THe ex…
Nov 11, 2024
1a36066
merge main into branch
Nov 11, 2024
d8707a2
adding the stored energy in the core to the log
Nov 12, 2024
7f71c6b
modifying the code for stored energy in the core in FEMM
Nov 12, 2024
293512f
excluding the left part from the outer boundary. Applying neumann in…
Nov 14, 2024
03e22a0
try for extracting the capacitances
Nov 21, 2024
8fc4d33
calculating C through charges
Nov 30, 2024
ae8fa27
adding potenial to a core, and adjust drawing temprarly for some purpose
Dec 30, 2024
096eae0
the insulations are taking into account in the electrostatic simulation
Jan 12, 2025
8148cf6
modifying insulation delta for top and bot
Jan 16, 2025
b690c2b
ttt
Jan 17, 2025
51b1e4d
just another permitivity used for the insulation
Jan 28, 2025
ee2be7c
implementing the insulation of bobbin from datasheet partially. Not a…
Jan 28, 2025
6986d49
implementing the insulation around the winding. In addition a kapton …
Feb 4, 2025
a3dcd81
temprarly for measurement
Feb 9, 2025
554450b
implementing layer insulation
Feb 22, 2025
117f5fc
Some_measurements_example
Apr 14, 2025
e72ffbd
running the code for magnetic simulation
Apr 14, 2025
538df5f
edit winding scheme for hexagonal
Apr 30, 2025
3702d0b
litz wire study
May 12, 2025
3091469
move bobbin parameters to the insulation class
May 28, 2025
48b8948
fixing the bugs of running the simulation without turn, kapton insula…
Jun 4, 2025
e435d4b
Resolved merge conflicts and completed merge from main into electrost…
Jun 4, 2025
c9a1dbc
fix basic_transformer and coorect dimensions of PQ40/40
Jun 8, 2025
b720ec2
deleting winding_test file to fix merging
Jun 8, 2025
6f3919f
delete old capacitance functions
Jun 8, 2025
4510aff
making basic_inductor and basic_transformer files same as in the ori…
Jun 8, 2025
8c092af
add discription of capacitance functions
Jun 8, 2025
b324a53
modified inductor file
Jun 8, 2025
7201d89
modifying test file for the new features
Jun 9, 2025
7280631
removing the ṕrinting of local stored energy
Jun 9, 2025
aa09196
add bobbin mdimensions. NOte that PQ16/11.6 dimensions are not known…
Jun 11, 2025
3250eec
resolving some merge conflicts and changing some names
Jun 16, 2025
4c33a98
collecting insulation material properties
Jun 24, 2025
6097798
add electrostatic tests to the test file
Jun 24, 2025
0b1f079
remove some functions that are not needed. Fixing the test file bugs
Jul 2, 2025
f0ddd9e
reducing the function of getting the capacitances into small functions
Jul 6, 2025
e38bb84
fixing pycodestyle
Jul 6, 2025
954f003
fix typo
gituser789 Jul 7, 2025
dfe18af
fix pyspelling
gituser789 Jul 7, 2025
710f775
rename Values to be values
Jul 7, 2025
9fa0cd4
fix case-sensitive folder structure for linux
gituser789 Jul 7, 2025
e8d43c9
Merge branch 'electrostatic_solver' of github.com:upb-lea/FEM_Magneti…
gituser789 Jul 7, 2025
5c6bd9b
adding some descriptions
Jul 7, 2025
3f848ea
fix gmsh version
gituser789 Jul 8, 2025
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
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -79,4 +79,4 @@ femmt/examples/paper_thermal_validation.py
femmt/examples/example_results

# pyspelling
dictionary.dic
dictionary.dic
76 changes: 73 additions & 3 deletions docs/wordlist
Original file line number Diff line number Diff line change
Expand Up @@ -452,9 +452,79 @@ NbSteps






# electrostatic
Kapton
Capacitances
capacitances
pF
ADE
ACvsBDE
ADvsBCE
DvsABCE
CvsABDE
BvsACDE
AvsBCDE
ABEvsCD
ABCDvsE
ABvsCDE
CDE
NaN
xlsx
InsulationMaterial
CoreMaterial
ZeroVoltage
MagD
MagE
EleSta
airgaps
OutBoundary
DirResValsVoltage
DirResValsCapacitance
DirResValsCapacitanceFromQV
DirResValsCharge
QV
DirResValsTurn
Tetrafluoroethylene
ETFE
Fluorinated
FEP
Propylene
ECTFE
Ethylenechlorotrifluoroethylene
PVDF
Polyvinylidene
Elastomers
TPE
Polyamide
PBT
Polybutylene
Terephthalate
PUR
CPE
TPR
Polychloroprene
Butadiene
SBR
Styrene
EPR
SBR
CSPE
Chlorosulfonated
fluoropolymer
PFA
Perfluoroalkoxy
PTFE
Polytetrafluoroethylene
LCP
DAP
Diallyl
Phthalate
Nomex
Phenolic
bOPET
xlsxwriter
Thermoset
Polyphenylene

# logging
FEMMTLogger
Expand Down
1,479 changes: 1,432 additions & 47 deletions femmt/component.py

Large diffs are not rendered by default.

6 changes: 6 additions & 0 deletions femmt/data.py
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,12 @@ def update_paths(self, working_directory: str, electro_magnetic_folder_path: str

# Setup file paths
self.e_m_results_log_path = os.path.join(self.results_folder_path, "log_electro_magnetic.json")
###
# for electrostatic
self.electrostatic_results_log_path = os.path.join(self.results_folder_path, "log_electro_static.json")
self.capacitance_result_log_path = os.path.join(self.results_folder_path, "capacitance_result.json")
self.capacitance_matrix_path = os.path.join(self.results_folder_path, "log_capacitance_matrix.json")
###
self.coordinates_description_log_path = os.path.join(self.results_folder_path, "log_coordinates_description.json")
self.reluctance_log_path = os.path.join(self.results_folder_path, "log_reluctance_and_inductance.json")
self.material_log_path = os.path.join(self.results_folder_path, "log_material.json")
Expand Down
826 changes: 635 additions & 191 deletions femmt/drawing.py

Large diffs are not rendered by default.

8 changes: 8 additions & 0 deletions femmt/dtos.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,14 @@ class StackedCoreDimensions:
window_h_top: float
window_h_bot: float

@dataclass
class BobbinDimensions:
"""Defines the dimensions of a default core."""

bobbin_inner_diameter: float
bobbin_window_w: float
bobbin_window_h: float
bobbin_h: float

@dataclass
class ConductorRow:
Expand Down
25 changes: 25 additions & 0 deletions femmt/electro_magnetic/fields_electrostatic.pro
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
PostOperation Map_local UsingPost EleSta {

// Potentials for the entire domain
ExtGmsh = ".pos";
Print[ u0, OnElementsOf Region[{Domain}], Name "Potential / V", File StrCat[DirResFields, "Potential", ExtGmsh], LastTimeStepOnly ] ;
Print[ u0, OnElementsOf Region[{Core}], Name "Average Potential on Core / V", File StrCat[DirResFields, "Voltage_Core_Map", ExtGmsh], LastTimeStepOnly ];

// Electric Field vector in the entire domain
Print[ e, OnElementsOf Region[{Domain}], Name "Electric Field", File StrCat[DirResFields, "Efield", ExtGmsh], LastTimeStepOnly ] ;
//Print[ Welocal, OnElementsOf Region[{Domain}], Name "Stored Energy", File StrCat[DirResFields, "We", ExtGmsh], LastTimeStepOnly ] ;
Print[ MagE, OnElementsOf Region[{Domain}], Name "Magnitude Electric Field / V/m", File StrCat[DirResFields, "MagE", ExtGmsh], LastTimeStepOnly ] ;

// Displacement Field vector in the entire domain
Print[ d, OnElementsOf Region[{Domain}], Name "Electric Field Density", File StrCat[DirResFields, "Dfield", ExtGmsh], LastTimeStepOnly ] ;
Print[ MagD, OnElementsOf Region[{Domain}], Name "Magnitude Electric Field Density / C/m^2", File StrCat[DirResFields, "MagD", ExtGmsh], LastTimeStepOnly ] ;


// Settings for visualization output (optional)
Echo[ Str["View[PostProcessing.NbViews-1].Light=0;
View[PostProcessing.NbViews-1].LineWidth = 2;
View[PostProcessing.NbViews-1].RangeType=3;
View[PostProcessing.NbViews-1].IntervalsType=1;
View[PostProcessing.NbViews-1].NbIso = 25;"],
File OptionPos];
}
Loading
Loading