6.5.1 Promoting Graphs to the Overview Report

In section 5.1 Running the Built-in Efficiency Testplan, you ran the built-in efficiency testplan and added the efficiency summary graph to the the overview test report.

  • The graph was created during the Generate Efficiency Curves test.
  • The PromoteGraph() function copied the graph from the Generate Efficiency Curves test to the overview report.

In that example, the overview report included only one graph, but you can add any number of graphs, define their order, and rename the graphs on the overview report.

To implement this functionality, the PromoteGraph() function has four versions with one required argument and three optional arguments that provide flexibility.

  • PromoteGraph(graph_name)
  • PromoteGraph(graph_name, weight)
    • In both versions above, graph_name must exactly match the DVM-generated graph name. To find the graph_name, you need to run the testplan and then open report.txt to find the name of the graph you want to promote and then go back to your testplan and add the PromoteGraph() function. For example, the auto-generated Bode Plot graph is named "DVM Bode Plot#ac#log".
    • In the second version, weight is a number that indicates the order in which you want the graph to appear with the higher numbered graphs appearing first in the report.
  • PromoteGraph(graph_name, weight, use_approximate_name
    • Weight is a number that indicates the order in which you want the graph to appear with the higher numbered graphs appearing first in the report.
    • The use_approximate_name argument must be 1 to instruct the program to search for that phrase in the actual graph names in report.txt.
      Note: Using the approximate_graph_name argument may match multiple graphs. For example, if you have a converter with multiple outputs, PromoteGraph(LOAD,3,1) matches all load graphs, assuming the loads were automatically named by DVM as LOAD1, LOAD2, etc. To be certain which graph you are promoting, examine the report.txt file for the full name and then set use_approximate_name to 0.
  • PromoteGraph(graph_name, weight, use_approximate_name, overview_graph_name)
    • Weight is a number that indicates the order in which you want the graph to appear with the higher numbered graphs appearing first in the report.
    • The use_approximate_name argument must be 1 to instruct the program to search for that phrase in the actual graph names in report.txt.  
    • The overview_graph_name argument specifies an alternate graph name that you want to appear on the report.

To promote two Bode plot graphs and two output load graphs to the overview report, follow these steps:

  1. Open the testplan from  SIMPLIS_dvm_tutorial_examples.zip at this path: testplans/6.3_jumpers.testplan.
  2. Add two Promote columns between the Jumper and Create columns..
  3. In the Promote columns in the first set of tests, add the following two PromoteGraph() functions in the second row of the nominal output voltage tests:
    • PromoteGraph(BODE PLOT, 100, 1, Bode Plot Nominal Vout)
    • PromoteGraph(LOAD, 90, 1)
  4. In the Promote columns in the second set of tests, add these two PromoteGraph() functions in the second row of the 600mV output voltage tests:
    • PromoteGraph(DVM BODE PLOT#log#ac, 80)
    • PromoteGraph(DVM LOAD#pop)
    Result: Your testplan should now look like the following with the added entries in red . This testplan is available from  SIMPLIS_dvm_tutorial_examples.zip at this path:
    testplans/6.5.1_promotegraph.testplan.
1   ***
2   *** 6.5.1_promotegraph.testplan: promotegraph testplan for DVM tutorial section 6.5.1
3   ***
4   *?@ Analysis Objective Jumper Promote Promote Create Create Create Source Load Label
5   ***
6   Ac BodePlot(OUTPUT:1) Close(J1)     Alias(gain_margin,gain_margin_nom) Alias(phase_margin,phase_margin_nom) Alias(gain_crossover_freq,gain_crossover_freq_nom) Source(INPUT:1, Nominal) Load(OUTPUT:1, Light) VOUT=1.505V|Bode Plot|Vin Nominal|Light Load
7   Ac BodePlot(OUTPUT:1) Close(J1) PromoteGraph(BODE PLOT, 100, 1, Bode Plot Nominal Vout) PromoteGraph(LOAD, 90, 1) Alias(gain_margin,gain_margin_nom) Alias(phase_margin,phase_margin_nom) Alias(gain_crossover_freq,gain_crossover_freq_nom) Source(INPUT:1, Nominal) Load(OUTPUT:1, 50%) VOUT=1.505V|Bode Plot|Vin Nominal|90% Load
8   Ac BodePlot(OUTPUT:1) Close(J1)     Alias(gain_margin,gain_margin_nom) Alias(phase_margin,phase_margin_nom) Alias(gain_crossover_freq,gain_crossover_freq_nom) Source(INPUT:1, Nominal) Load(OUTPUT:1, 100%) VOUT=1.505V|Bode Plot|Vin Nominal|100% Load
9   ***
10   *** the jumper position sets the output voltage to 0.6V
11   ***
12   Ac BodePlot(OUTPUT:1) Open(J1)     Alias(gain_margin,gain_margin_600mV) Alias(phase_margin,phase_margin_600mV) Alias(gain_crossover_freq,gain_crossover_freq_600mV) Source(INPUT:1, Maximum) Load(OUTPUT:1, Light) VOUT=0.6V|Bode Plot|Vin Maximum|Light Load
13   Ac BodePlot(OUTPUT:1) Open(J1) PromoteGraph(DVM BODE PLOT#log#ac, 80) PromoteGraph(DVM LOAD#pop) Alias(gain_margin,gain_margin_600mV) Alias(phase_margin,phase_margin_600mV) Alias(gain_crossover_freq,gain_crossover_freq_600mV) Source(INPUT:1, Maximum) Load(OUTPUT:1, 50%) VOUT=0.6V|Bode Plot|Vin Maximum|50% Load
14   Ac BodePlot(OUTPUT:1) Open(J1)     Alias(gain_margin,gain_margin_600mV) Alias(phase_margin,phase_margin_600mV) Alias(gain_crossover_freq,gain_crossover_freq_600mV) Source(INPUT:1, Maximum) Load(OUTPUT:1, 100%) VOUT=0.6V|Bode Plot|Vin Maximum|100% Load

When you open the overview report after running this testplan, you should see four graphs:

  • The Bode plot is the first graph, which was renamed BODE PLOT NOMINAL VOUT because of the first PromoteGraph() function on line 7.
  • The next graph, titled LOAD, also comes from line 7 and shows the corresponding POP output voltage and current waveforms for the nominal output voltage case.
  • The third graph, titled BODE PLOT, is from line 13 for the 600mV output voltage test.
  • The fourth graph, also from line 13, shows the POP output voltage and current waveforms for the 600mV Bode Plot test.
    Note: Since this is a second occurrence of the graph title LOAD, renaming one or both of these to reflect test conditions would be a best practice to follow to minimize confusion about which test generated each graph.