/* eslint-disable */
// ---
// metadata:
//     display_name: Circuit Schematic Builder
//     markdown: !!null
// data: |
export const circuitSchematic = `<problem>
    <p>
        Circuit schematic problems allow students to create virtual circuits by
        arranging elements such as voltage sources, capacitors, resistors, and
        MOSFETs on an interactive grid. The system evaluates a DC, AC, or
        transient analysis of the circuit.
    </p>
    <p>
        For more information, see
        <a href="https://edx.readthedocs.io/projects/edx-partner-course-staff/en/latest/exercises_tools/circuit_schematic_builder.html" target="_blank">
        Circuit Schematic Builder Problem</a> in <i>Building and Running an edX Course</i>.
    </p>
    <p>
        When you add the problem, be sure to select <strong>Settings</strong>
        to specify a <strong>Display Name</strong> and other values that apply.
    </p>
    <p>You can use the following example problems as models.</p>

    <schematicresponse>
        <p>Make a voltage divider that splits the provided voltage evenly.</p>
        <center>
            <schematic height="500" width="600" parts="g,r" analyses="dc"
            initial_value="[[&quot;v&quot;,[168,144,0],{&quot;value&quot;:&quot;dc(1)&quot;,&quot;_json_&quot;:0},[&quot;1&quot;,&quot;0&quot;]],[&quot;r&quot;,[296,120,0],{&quot;r&quot;:&quot;1&quot;,&quot;_json_&quot;:1},[&quot;1&quot;,&quot;output&quot;]],[&quot;L&quot;,[296,168,3],{&quot;label&quot;:&quot;output&quot;,&quot;_json_&quot;:2},[&quot;output&quot;]],[&quot;w&quot;,[296,216,168,216]],[&quot;w&quot;,[168,216,168,192]],[&quot;w&quot;,[168,144,168,120]],[&quot;w&quot;,[168,120,296,120]],[&quot;g&quot;,[168,216,0],{&quot;_json_&quot;:7},[&quot;0&quot;]],[&quot;view&quot;,-67.49999999999994,-78.49999999999994,1.6000000000000003,&quot;50&quot;,&quot;10&quot;,&quot;1G&quot;,null,&quot;100&quot;,&quot;1&quot;,&quot;1000&quot;]]"/>
        </center>
        <answer type="loncapa/python">
            dc_value = "dc analysis not found"
            for response in submission[0]:
            if response[0] == 'dc':
                for node in response[1:]:
                    dc_value = node['output']

            if dc_value == .5:
            correct = ['correct']
            else:
            correct = ['incorrect']
        </answer>
        <solution>
            <div class="detailed-solution">
                <p>Explanation</p>
                <p>
                    You can form a voltage divider that evenly divides the input
                    voltage with two identically valued resistors, with the sampled
                    voltage taken in between the two.
                </p>
                <p><img src="/static/images/voltage_divider.png" alt=""/></p>
            </div>
        </solution>
    </schematicresponse>

    <schematicresponse>
        <p>Make a high-pass filter.</p>
        <center>
            <schematic height="500" width="600" parts="g,r,s,c" analyses="ac"
            submit_analyses="{&quot;ac&quot;:[[&quot;NodeA&quot;,1,9]]}"
            initial_value="[[&quot;v&quot;,[160,152,0],{&quot;name&quot;:&quot;v1&quot;,&quot;value&quot;:&quot;sin(0,1,1,0,0)&quot;,&quot;_json_&quot;:0},[&quot;1&quot;,&quot;0&quot;]],[&quot;w&quot;,[160,200,240,200]],[&quot;g&quot;,[160,200,0],{&quot;_json_&quot;:2},[&quot;0&quot;]],[&quot;L&quot;,[240,152,3],{&quot;label&quot;:&quot;NodeA&quot;,&quot;_json_&quot;:3},[&quot;NodeA&quot;]],[&quot;s&quot;,[240,152,0],{&quot;color&quot;:&quot;cyan&quot;,&quot;offset&quot;:&quot;0&quot;,&quot;_json_&quot;:4},[&quot;NodeA&quot;]],[&quot;view&quot;,64.55878906250004,54.114697265625054,2.5000000000000004,&quot;50&quot;,&quot;10&quot;,&quot;1G&quot;,null,&quot;100&quot;,&quot;1&quot;,&quot;1000&quot;]]"/>
        </center>
        <answer type="loncapa/python">
        ac_values = None
        for response in submission[0]:
        if response[0] == 'ac':
            for node in response[1:]:
                ac_values = node['NodeA']
        print "the ac analysis value:", ac_values
        if ac_values == None:
        correct = ['incorrect']
        elif ac_values[0][1] &lt; ac_values[1][1]:
        correct = ['correct']
        else:
        correct = ['incorrect']
        </answer>
        <solution>
            <div class="detailed-solution">
                <p>Explanation</p>
                <p>
                    You can form a simple high-pass filter without any further
                    constraints by simply putting a resistor in series with a
                    capacitor. The actual values of the components do not really
                    matter in this problem.
                </p>
                <p><img src="/static/images/high_pass_filter.png" alt=""/></p>
            </div>
        </solution>
    </schematicresponse>
</problem>`;

export default circuitSchematic;
