This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

elec_getNodeDvDtTimeSeries

Calculate rates-of-change of voltage variables

Syntax

seriesTable = elec_getNodeDvDtTimeSeries(node,tau)

Description

example

seriesTable = elec_getNodeDvDtTimeSeries(node,tau) calculates rates-of-change of voltage variables for nodes that are based on the foundation.electrical.electrical domain, based on logged simulation data. The function returns the data for each terminal in a table. The data in the table appears in descending order according to the maximum absolute value of the rate-of-change of voltage variables with respect to the ground, over the whole simulation time. The table does not contain data for terminals that are held fixed.

Before you call this function, you must have the simulation log variable in your current workspace. Create the simulation log variable by simulating the model with data logging turned on, or load a previously saved variable from a file. If node is the name of the simulation log variable, then the table contains the data for all the blocks in the model that have nodes based on the foundation.electrical.electrical domain. If node is the name of a node in the simulation data tree, then the table contains the data only for the children of that node.

Examining rates-of-change of voltage variables in power electronics circuits is useful for determining the potential for unwanted conducted or radiated emissions. The rate-of-change data also helps you to identify unwanted turn-on of switching devices. All nodes that are based on the foundation.electrical.electrical domain store the potential with respect to electrical ground as the variable v. When you log simulation data, the time-value series for this variable represents the trend of the potential over time. You can view and plot this data using the Simscape™ Results Explorer.

To evaluate the rates-of-change of voltage variables, the elec_getNodeDvDtTimeSeries function employs finite difference approximation of the first derivative with respect to time. It performs 1-D data linear interpolation of voltage variables using a uniform grid with the time step, tau. The function then applies the central differencing scheme to the interpolated data.

Tip

For small time steps, finite differencing may lead to inaccurate results. The time step tau should be small enough to capture waveforms, but not so small that the finite differencing error becomes large. For example, for power transistors with an expected limit of 50 V/ns for their voltage rate-of-change, a reasonable guess for tau is 1e-9 s.

Examples

Calculate Voltage Derivatives by Block for the Whole Model

Open the Class E DC-DC Converter example model.

open_system('ee_converter_dcdc_class_e')

This example model has data logging enabled. Run the simulation to create the simulation log variable simlog_ee_converter_dcdc_class_e in your current workspace.

sim('ee_converter_dcdc_class_e');

Calculate rates-of-change of voltage variables for the whole model with a time step of 1e-9 seconds, and return the time series data in a table.

seriesTable = elec_getNodeDvDtTimeSeries(simlog_ee_converter_dcdc_class_e,1e-9)
seriesTable =

  19x4 table

                                    LoggingNode                                     Terminal         Voltage               dvdt       
    ____________________________________________________________________________    ________    _________________    _________________

    "ee_converter_dcdc_class_e.R_Trans"                                               "n"       [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.Transformer"                                           "p1"      [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.Cs"                                                    "n"       [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.R_Trans"                                               "p"       [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.Cs"                                                    "p"       [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.LDMOS"                                                 "D"       [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.Ls"                                                    "n"       [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.Sense_Vds.Voltage_Stress_Sensor"                       "p"       [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.D2"                                                    "p"       [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.Transformer"                                           "n3"      [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.D1"                                                    "p"       [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.Transformer"                                           "p2"      [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.Behavioral_Gate_Driver.Controlled_Voltage_Source"      "p"       [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.LDMOS"                                                 "G"       [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.Cout"                                                  "p"       [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.D1"                                                    "n"       [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.D2"                                                    "n"       [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.R_Load"                                                "p"       [1x125001 double]    [1x125001 double]
    "ee_converter_dcdc_class_e.Sense_Vout.Voltage_Sensor"                             "p"       [1x125001 double]    [1x125001 double]

The table contains time series data of voltage variables and their first derivatives over the whole simulation time for all the blocks in the model that have nodes based on the foundation.electrical.electrical domain.

View the time series data. From the workspace, open the seriesTable table, then open the two 1x125001 double numeric arrays for the ee_converter_dcdc_class_e.LDMOS.D.

The first array contains the voltage data. The second array contains the voltage derivative data.

Plot the data.

time = 0:1e-9:1.25e-4;
vOut = seriesTable.Voltage{6};
dvdtOut = seriesTable.dvdt{6};

ax1 = subplot(2,1,1);
plot(time,vOut),grid;
ylabel('Voltage (V)');
axis([0 1.25e-4 0 1000]);
ax1.XTickLabel = {};
ax1.Title.String = 'LDMOS Stress Voltage';

ax2 = subplot(2,1,2);
plot(time,dvdtOut),grid;
ylabel('Voltage Derivative (V/s)');
xlabel('Time (s)');
axis([0 1.25e-4 0 4e10]);
ax2.Title.String = 'LDMOS Stress Voltage Derivative';

Input Arguments

collapse all

Simulation log workspace variable, or a node within this variable, that contains the logged model simulation data, specified as a Node object. You specify the name of the simulation log variable by using the Workspace variable name parameter on the Simscape pane of the Configuration Parameters dialog box. To specify a node within the simulation log variable, provide the complete path to that node through the simulation data tree, starting with the top-level variable name.

Example: simlog_ee_converter_dcdc_class_e.LDMOS

Time step for numerical differentiation, specified as a real number, in seconds. tau determines the interpolation grid as startTime:tau:endTime.

Example: 1e-9

Data Types: double

Output Arguments

collapse all

Time series of the voltage rates-of-change for each block, returned as a table. The first column lists all the logging nodes in node that are based on the foundation.electrical.electrical domain. The second column lists the terminal names. The third column lists the corresponding interpolated voltage values, in volts. The fourth column lists the corresponding numerically differentiated values of voltage rates-of-change, in volts per second. The table does not contain data for terminals that are held fixed.

Compatibility Considerations

expand all

Not recommended starting in R2019a

Introduced in R2018b