{% extends "VirtualDatasheet_BaseTemplate.html" %}
{% block content %}
{% set pagesReqForDiode = 1 %}
{% set pagesReqForSwitch = 1 %}
{% set ns = namespace(pagesReqForRawData = 0) %}
{% set x = 0 %}
{% set count = 0 %}
{% set raw_measurement_object_count = 0 %}
{% set diode_plots = {} %}
{% set switch_plots = {} %}
{% set trans_plots = {} %}
{% set raw_measurement_plot = {} %}
{% set trans_title = {'c_plots': 'Voltage dependent Capacitance'} %}
{% set switch_title = {'channel_plots': 'Channel Characteristics', 'energy_plots': 'Current vs. Energy', 'energy_plots_r': 'Rg vs. Energy', 'energy_plots_t': 'Tj vs. Energy', 'r_channel_th_plot':'On Resistance', 'charge_curve':'Gate charge,Qg','imp_plot':'Thermal step response', 'soa':'Safe operating Area'} %}
{% set diode_title = {'channel_plots': 'Channel Characteristics', 'energy_plots': 'Current vs. Energy', 'energy_plots_r': 'Rg vs. Energy', 'energy_plots_t': 'Tj vs. Energy', 'imp_plot':'Thermal step response', 'soa':'Safe operating Area' } %}
{% for key, value in diode['plots'].items() %}
{% if value is mapping and value|length > 0 %}
{% for channel_key, channel_value in value.items() %}
{% if channel_value is not none %}
{% do diode_plots.update({channel_key: channel_value}) %}
{% endif %}
{% endfor %}
{% else %}
{% if value is not none %}
{% do diode_plots.update({key: value}) %}
{% endif %}
{% endif %}
{% endfor %}
{% if diode['foster_plot']['imp_plot'] is not none %}
{% do diode_plots.update({'imp_plot': diode['foster_plot']['imp_plot']}) %}
{% endif %}
{% for key, value in switch['plots'].items() %}
{% if value is mapping and value|length > 0 %}
{% for channel_key, channel_value in value.items() %}
{% if channel_value is not none %}
{% do switch_plots.update({channel_key: channel_value}) %}
{% endif %}
{% endfor %}
{% else %}
{% if value is not none %}
{% do switch_plots.update({key: value}) %}
{% endif %}
{% endif %}
{% endfor %}
{% if switch['foster_plot']['imp_plot'] is not none %}
{% do switch_plots.update({'imp_plot': switch['foster_plot']['imp_plot']}) %}
{% endif %}
{% for key, item in trans['plots'].items() %}
{% if item is not none %}
{% do trans_plots.update({key: item}) %}
{% endif %}
{% endfor %}
{% if switch_plots|length > 6 %}
{% set pagesReqForSwitch = 2 %}
{% endif %}
{% if diode_plots|length > 6 %}
{% set pagesReqForDiode = 2 %}
{% endif %}
Transistor Specifications |
Value |
Units |
{% for key, value in trans.items() %}
{% if not key == 'plots'and not key == 'raw_measurement_data' and not key == 'Raw_measurement_data' %}
{% set split_list = key.split('_') %}
{{ split_list[0] }}{% if split_list|length > 1 %}{{split_list[1]}}{% endif %} |
{% if value is string %}
{{ value }} |
- |
{% else %}
{% if key == 'Datasheet hyperlink' %}
{{trans["Manufacturer"][0]}} |
{% else %}
{{ value[0] }} |
{% endif %}
{% if value[1] is none %}
- |
{% else %}
{{ value[1] }} |
{% endif %}
{% endif %}
{% endif %}
{% endfor %}
{{trans["Type"][0]}} Specifications |
{% for key, value in switch.items() %}
{% if not (key == 'plots' or key == 'foster_plot') %}
{% set split_list = key.split('_') %}
{{ split_list[0] }}{% if split_list|length > 1 %}{{split_list[1]}}{% endif %} |
{% if value is string %}
{{ value }} |
- |
{% else %}
{{ value[0]}} |
{% if value[1] is none %}
- |
{% else %}
{{ value[1] }} |
{% endif %}
{% endif %}
{% endif %}
{% endfor %}
Diode Specifications |
{% for key, value in diode.items() %}
{% if not (key == 'plots' or key == 'foster_plot') %}
{% set split_list = key.split('_') %}
{{ split_list[0] }}{% if split_list|length > 1 %}{{split_list[1]}}{% endif %} |
{% if value is string %}
{{ value }} |
- |
{% else %}
{{ value[0] }} |
{% if value[0] is none %}
- |
{% else %}
{{ value[1] }} |
{% endif %}
{% endif %}
{% endif %}
{% endfor %}
{% if trans_plots|length > 0 %}
{{trans["Type"][0]}} Generic Plots
{% for key, value in trans_plots.items() %}
{% if value is not none %}
{{trans_title[key]}}
{% endif %}
{% endfor %}
{% endif %}
{% set s_plotted_keys = [] %}
{% for index in range(pagesReqForSwitch) %}
{% set count = [] %}
{{trans["Type"][0]}} Characteristic Plots
{% for s_key, value in switch_plots.items() %}
{% if not s_key in s_plotted_keys%}
{% if s_key is number %}
{% if s_key|abs < 25 %}
Channel at Vg = {{ s_key }} V
{% else %}
Channel at {{ s_key }}°C
{% endif %}
{% set pic_id = 'pic_channel_switch_' ~ s_key|abs %}
{% else %}
{{switch_title[s_key]}}
{% endif %}
{% set __ = count.append(1) %}
{% do s_plotted_keys.append(s_key) %}
{% if count|length == 6 %}
{% break %}
{% endif %}
{% endif %}
{% endfor %}
{% endfor %}
{% set d_plotted_keys = [] %}
{% for index in range(pagesReqForDiode) %}
{% set count = [] %}
Diode Characteristic Plots
{% for d_key, value in diode_plots.items() %}
{% if not d_key in d_plotted_keys %}
{% if d_key is number %}
{% if d_key|abs < 25 %}
Channel at Vg = {{ d_key }} V
{% else %}
Channel at {{ d_key }}°C
{% endif %}
{% set pic_id_diode = 'pic_channel_diode_' ~ d_key|abs %}
{% else %}
{{diode_title[d_key]}}
{% endif %}
{% set __ = count.append(1) %}
{% do d_plotted_keys.append(d_key) %}
{% if count|length == 6 %}
{% break %}
{% endif %}
{% endif %}
{% endfor %}
{% endfor %}
{% if trans['raw_measurement_data']|length > 0 %}
{% set raw_plotted_keys = [] %}
{% for j in trans['raw_measurement_data'] %}
{% for i in j %}
{% if i is mapping %}
{{trans["Type"][0]}} Raw Measurement Data |
{% for key,item in i.items() %}
{% if key == 'total graphs' %}
{% set x = x + i[key] %}
{% if x > 6 %}
{% set x = x / 6 %}
{% set x = x|round|int %}
{% if x < (i[key]/6) %}
{% set ns.pagesReqForRawData = x + 1 %}
{% else %}
{% set ns.pagesReqForRawData = x %}
{% endif %}
{% else %}
{% set ns.pagesReqForRawData = 1 %}
{% endif %}
{% else %}
{% set split_list = key.split('_') %}
{{ split_list[0] }}{% if split_list|length > 1 %}{{split_list[1]}}{% endif %} |
{% if items is string %}
{{ item[0] }} |
- |
{% else %}
{% if item[0] is none %}
- |
- |
{% else %}
{{ item[0]}} |
{{ item[1] }} |
{% endif %}
{% endif %}
{% endif %}
{% endfor %}
{% else %}
{% for raw_data_plots_count in range(i|length) %}
{% if i[raw_data_plots_count] is not none %}
{% do raw_measurement_plot.update({raw_data_plots_count:i[raw_data_plots_count]}) %}
{% endif %}
{% endfor %}
{% for k in range(ns.pagesReqForRawData) %}
{% set count = namespace(value=0) %}
{{trans["Type"][0]}} Raw Measurement Data Plots
{% for key, plot in raw_measurement_plot.items() %}
{% if key not in raw_plotted_keys%}
{% if plot is not none %}
{%if key is number %}
{%if count.value < 6%}
{% do raw_plotted_keys.append(key)%}
{% set count.value = count.value + 1 %}
{% endif %}
{% endif %}
{% endif %}
{% endif %}
{% endfor %}
{% endfor %}
{% endif %}
{%endfor%}
{% endfor %}
{%endif%}
{% endblock %}