hgiddenss/CST_App

A Matlab to CST Interface
1.8K Downloads
Updated Fri, 16 Dec 2022 15:44:07 +0000
Use to programmatically control the commercial EM solver, CST Microwave Studio, through MATLAB.
FEATURES:
- Build and run complex simulation problems in CST Microwave Studio programatically from MATLAB
- Build complex geometries in the CST from MATLAB scripts
- Directly import results from CST into MATLAB for analysis and plotting
- Visualize CST Simulation setup in MATLAB figures.
See Examples for different ways software can be used. Created and tested in MATLAB R2018a but should work with recent versions (at least from R2017a). Will only work on Windows Platform as uses actxserver as a COM server to CST. Should work with all latest versions of CST (tested with 2017-2019).

Cite As

Henry Giddens (2024). hgiddenss/CST_App (https://github.com/hgiddenss/CST_App), GitHub. Retrieved .

MATLAB Release Compatibility
Created with R2019a
Compatible with R2017a to R2019a
Platform Compatibility
Windows macOS Linux
Categories
Find more on Verification, Validation, and Test in Help Center and MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Versions that use the GitHub default branch cannot be downloaded

Version Published Release Notes
1.2.26

Added two new methods:
loadMaterialFromLibrary(obj,material)
setSimultaneousPortExcitation(obj,ports,amplitude,phase,status,frequency,excitationString)

See help sections for more info

1.2.25

New method: pickPoints

1.2.24

deleteParameter method added

1.2.23

New Methods (addDispersiveMaterial), updated examples and functions

1.2.22

add InstallMacroScript for installing macros when CST_App fails to do so correctly

1.2.21

application.2019 to application

1.2.20

Fix addNormalMaterial so tanD and tanDM values can be added correctly

1.2.19

Remove command forcing CST to open 2019 version

1.2.18

Bug Fix for getSParams causing an error when only one parametric sweep had been simulated.

1.2.17

Bug Fixes, New Booleon Methods

1.2.16

Added support for retrieving s-parameter results from parametric sweeps using the method getSParams. Old method getSParameters still works as previous version but only outputs results from runID = 0. See example ManagingSParameters.m for more info.

1.2.15

Updated definition of background material in class creator to stop it setting it as something other than a vacuum by default. New methodto set background to other "normal" or "pec" materials. Add options for tand and sigma for normal materials.

1.2.14

Bug fix in dipole example,
New method getEFieldVectorAll returns EField from all mesh points in hexahederal mesh (time domain) simulations

1.2.13

I believe getEFieldVector is now returning the correct field and coordinate values in all planes. Examples to be updated...

1.2.12

Bug fix to getEFieldVector for y-z and x-z planes. A few other bug fixes that hopefully haven't effected other functionality, but not fully tested.

1.2.11

Fixed issue opening existing CST files
getFieldIDStrings outputs farfield strings which can be directly input as ffid into getFarField
New functions for plotting 3D patterns
getEFieldVector returns X,Y,Z grids so field can be plotted with 'surf'

1.2.10.3

New Image Icon

1.2.10.2

change image icon

1.2.10.1

Updated image

1.2.10

Changed image icon

1.2.9

Bug fixes, improvement/changes to some methods and examples.
getEFieldVector now returns X,Y,Z coordinate points in matrices that can readily be used to plot the field in a surface plot.

1.2.8

Removed 'ports' property as this was unused. Tidied up code. Updated examples. Minor bug fixes. Changed input arg list for rotateObject method but will still work with old input argument list.

1.2.7

Significant improvements to plotting simulation setup in Matlab plot windows including plotting all objects in the same colors that they appear in the CST session. Macros will be installed locally, most likely into the app_data folder.

1.2.6

Updates: Extensive support for using parameters when building CST models. You should be able to use parameters to build all types of objects as the x/y values. Does not support expressions which include parameters.
New Example: AssignParameters.m

1.2.5

New Method: getPortSignals - read port signals into Matlab

1.2.4

Improvements and bug fixes to plotting simulation setup in matlab

1.2.3

New Functionality: - draw the CST simulation setup directly into Matlab axes by importing a specific CST solid or surface (in components) and plotting as surface object in Matlab
Method: drawObjectMatlab
Example: DrawSimulationSetupInMatlab.m

1.2.2

Bug fixes and minor improvements

1.2.1

Main Updates: Turn auto updating off and let Matlab send a long list of commands to CST so building can be done all at once. See 'BuildAtOnceExample.m'
New methods: deleteObject, addToHistory, update, setUpdateStatus, mergeCommonSolids

1.1.6

Improved file handling: CST = CST_MicrowaveStudio(); with no input parameters will return an object which is associated with the currently active mws project.
Improved handling of port numbers. All new ports will always be numbered consecutively.

1.1.5

Updates to CST_Microwave studio with some new functionality.
New Methods:
addPolygonBlock3D
connectFaces
addComponent
translateComponent
New Example:
SinusoidSurface

1.1.4

Added new functionality for handling parameters:
addParameter
changeParameterValue
isParameter
parameterUpdate
getParameterValue

1.1.3

New Method: getFieldIDStrings to return strings needed for getFarField and getEFieldVector
New Function: plot3Dmeshgrid for plotting the hetrahederal mesh used in TD solver in a matlab window
Bug fixes to example files

1.1.2

New method getMeshInfo
Extra example use in Examples/dipole.m.
Update to defineUnits so user can modify project
Bug fix so a CST_MicrowaveStudio object will be correctly created when a file already open in CST is passed as the input argument

1.1.0.1

Added method getEFieldVector to return the electric field value from e-field monitor for a simulation performed using the time domain solver and hexahedral mesh. Updates and bug fix in the Examples\dipole.m file

1.1.0.0

Bug fixed for defineFloquetModes method

1.0.0.0

To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.