Introduction
Introductions of SimWorks Finite Difference Solutions #
The SimWorks Finite Difference Solutions is a micro-nano optoelectronic simulation design platform, featuring high performance, high efficiency, and wide application range. The SimWorks Finite Difference Solutions is indispensable from the R&D of a single device to the design of an integrated system, and from lab to production line.
This article briefly explains the software framework, simulation process, working environment, and resource configuration.
Please refer to the Overview for more setting details of the software.
Software Framework #
CAD, Solver, and Script #
The software consists of the following three independent aspects:
- 3D CAD focused on structural design;
- Solvers with solving algorithms as the core, source, and monitor;
- A script engine for software operation, data visualization, and algebraic computation.
flowchart TD
CAD[3D CAD] --Transmit--> SOLVER[Slover];
SCRIPT[Script]--Control--> CAD[3D CAD];
SCRIPT[Script] --Control--> SOLVER[Slover];
SOLVER[Slover] --Transmit--> SCRIPT[Script];
SOLVER[Slover] --Solve--> CAD[3D CAD];
CAD[3D CAD] --Transmit--> SCRIPT[Script];
subgraph SCRIPT[Script]
Script;
end
subgraph SOLVER[Slover]
Solver -.-> Sources;
Solver -.-> Monitors;
end
subgraph CAD[3D CAD]
Materials--> Structures;
end
The relations of CAD, Solver, and Script:
-
The data of the structure is transferred to the solver to solve the structure;
-
Use the script to set the structure parameters, or transfer the structure data to the script (that is, use the script to obtain the structure data);
-
Use the script to set the solver parameters, or transfer the solver data to the script (that is, use the script to obtain the solver data).
Overview #
Simulation Process #
Simulation Process #
Modeling and simulation process:
flowchart LR
subgraph 1 Project
Materials --> Structures;
Structures --> Device;
Solver -.-> Device;
Solver --> Sources;
Sources --> Device;
end
subgraph 2 Record data
Monitors;
end
Device --> Monitors;
subgraph 3 Analysis results
Device -.-> Post_processing[Post processing];
Monitors --> Post_processing[Post processing];
end
A passive micro-nano optoelectronic device file mainly includes three parts shown in the figure above:
1.Project
There is no mandatory order requirement between modeling (selecting materials or adding structures) and simulation (solver or source), except that source (if required) must be added after the solver is created.
2.Record Data
Note that data recording is collection, display, and processing of project data. This is significant for modeling and simulation, and it will not affect the results of the project simulation.
- In FDTD/FDFD solver, the monitor is mainly used to record data. In addition, each object stores its own "Raw data";
- In FDE solver, the mode results are displayed on the Eigensolver workbench page, which includes information such as the mode field and effective index. The raw data can be obtained from the result dataset calculated by Mode solver.
3.Analysis Results
The data for the analysis results are mainly from various monitors, and a small amount of "Raw data" comes from the solver component.
General Functions #
In addition, the following three functions are widely supported by various parts of the software:
- Script
- Data visualizer
- Optimization and sweep
flowchart LR
subgraph General_functions[General functions]
Optimizations_sweep[Optimizations and sweep];
Data_visualizer[Data visualizer];
Script[Script];
end
subgraph Used_in[Used in]
1_Project[1 Project];
2_Record[2 Record];
3_Analysis[3 Analysis];
end
General_functions --> 1_Project[1 Project];
General_functions --> 2_Record[2 Record];
General_functions --> 3_Analysis[3 Analysis];
Working Environment and Resource Configuration #
Working Environment #
Software supports:
- Windows OS
- macOS
- Linux OS
Resource Configuration #
Computing methods:
- PC
- Cloud server
- HPC (High Performance Computing)
See Computing resources.

