<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Neeraj Balachandar | Research Portfolio</title><link>https://neerajbalachandar.github.io/</link><atom:link href="https://neerajbalachandar.github.io/index.xml" rel="self" type="application/rss+xml"/><description>Neeraj Balachandar | Research Portfolio</description><generator>Hugo Blox Builder (https://hugoblox.com)</generator><language>en-us</language><lastBuildDate>Sun, 29 Mar 2026 00:00:00 +0000</lastBuildDate><image><url>https://neerajbalachandar.github.io/media/icon_hu16206239388152479810.png</url><title>Neeraj Balachandar | Research Portfolio</title><link>https://neerajbalachandar.github.io/</link></image><item><title>Important Course Notes (Template)</title><link>https://neerajbalachandar.github.io/notes/course-notes-template/</link><pubDate>Sun, 29 Mar 2026 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/notes/course-notes-template/</guid><description>&lt;p>Add your course note summary here.&lt;/p>
&lt;p>Use the &lt;code>PDF&lt;/code> link above to point to a file you upload under &lt;code>static/uploads/notes/&lt;/code>.&lt;/p></description></item><item><title>Research Notes (Template)</title><link>https://neerajbalachandar.github.io/blog/research-notes/</link><pubDate>Sun, 29 Mar 2026 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/blog/research-notes/</guid><description>&lt;p>Write your blog content here.&lt;/p></description></item><item><title>VarFIExI - Variable Fidelity Aeroelastic Solver</title><link>https://neerajbalachandar.github.io/project/flowunsteady/</link><pubDate>Thu, 11 Sep 2025 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/project/flowunsteady/</guid><description>&lt;h2 id="problem">Problem&lt;/h2>
&lt;p>VarFIExI is a variable-fidelity aeroelastic framework that couples vortex particle flow models with structural solvers. The aim is to retain key aeroelastic physics while keeping the computational cost low enough for design and control studies.&lt;/p>
&lt;figure class="project-detail-figure">&lt;img src="https://neerajbalachandar.github.io/project/flowunsteady/detail.png" alt="VarFIExI - Variable Fidelity Aeroelastic Solver detail image" loading="lazy">&lt;/figure>
&lt;h2 id="approach">Approach&lt;/h2>
&lt;ul>
&lt;li>rVPM flow solver coupled to FEM via preCICE&lt;/li>
&lt;li>Implicit and partitioned explicit coupling strategies&lt;/li>
&lt;li>Validation on benchmark aeroelastic cases&lt;/li>
&lt;/ul></description></item><item><title>Course Notes (Template)</title><link>https://neerajbalachandar.github.io/blog/course-notes/</link><pubDate>Sun, 29 Mar 2026 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/blog/course-notes/</guid><description>&lt;p>Use this entry style for course notes you want listed under Blog.&lt;/p></description></item><item><title>Nonlinear Model Predictive Control via Sequential Convex Programming for Drone-to-Drone Docking</title><link>https://neerajbalachandar.github.io/project/docking/</link><pubDate>Thu, 11 Sep 2025 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/project/docking/</guid><description>&lt;h2 id="problem">Problem&lt;/h2>
&lt;p>This project develops sequential convex programming formulations for drone-to-drone docking. The focus is on safe, feasible trajectories that respect disturbance bounds and actuator limits while preserving computational tractability.&lt;/p>
&lt;figure class="project-detail-figure">&lt;img src="https://neerajbalachandar.github.io/project/docking/detail.png" alt="Nonlinear Model Predictive Control via Sequential Convex Programming for Drone-to-Drone Docking detail image" loading="lazy">&lt;/figure>
&lt;h2 id="approach">Approach&lt;/h2>
&lt;ul>
&lt;li>Convexified constraints for safety and docking geometry&lt;/li>
&lt;li>Robust thrust profiles under bounded disturbances&lt;/li>
&lt;li>Numerical validation on docking scenarios&lt;/li>
&lt;/ul></description></item><item><title>Photography (Template)</title><link>https://neerajbalachandar.github.io/blog/photography/</link><pubDate>Sun, 29 Mar 2026 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/blog/photography/</guid><description>&lt;p>Add your photography write-up here.&lt;/p></description></item><item><title>Quasi-static Elbow Flexion Study</title><link>https://neerajbalachandar.github.io/project/quasi-static-elbow-flexion-study/</link><pubDate>Sat, 01 Jun 2024 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/project/quasi-static-elbow-flexion-study/</guid><description>&lt;h2 id="problem">Problem&lt;/h2>
&lt;p>Designed an exoskeleton system and validated muscle activity models under simulated microgravity conditions using biomechanical analysis.&lt;/p>
&lt;figure class="project-detail-figure">&lt;img src="https://neerajbalachandar.github.io/project/quasi-static-elbow-flexion-study/detail.png" alt="Quasi-static Elbow Flexion Study detail image" loading="lazy">&lt;/figure>
&lt;h2 id="approach">Approach&lt;/h2>
&lt;ul>
&lt;li>Built a quasi-static biomechanical model for elbow flexion with exoskeleton interaction.&lt;/li>
&lt;li>Compared simulated muscle activation trends against controlled experimental observations.&lt;/li>
&lt;/ul></description></item><item><title>Neural Operator Surrogates for Fast Multipole Vortex Simulations</title><link>https://neerajbalachandar.github.io/project/neural-operator-surrogates/</link><pubDate>Thu, 11 Sep 2025 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/project/neural-operator-surrogates/</guid><description>&lt;h2 id="problem">Problem&lt;/h2>
&lt;p>This project builds neural-operator-based surrogates for fast multipole vortex simulations. The emphasis is on conservation-preserving learning and super-resolution reconstruction of velocity fields.&lt;/p>
&lt;figure class="project-detail-figure">&lt;img src="https://neerajbalachandar.github.io/project/neural-operator-surrogates/detail.png" alt="Neural Operator Surrogates for Fast Multipole Vortex Simulations detail image" loading="lazy">&lt;/figure>
&lt;h2 id="approach">Approach&lt;/h2>
&lt;ul>
&lt;li>Neural operators for N-body vortex interactions&lt;/li>
&lt;li>Conservation-aware training objectives&lt;/li>
&lt;li>Super-resolution velocity reconstruction&lt;/li>
&lt;/ul></description></item><item><title>Analytical Model for Soft Robotic Membranes</title><link>https://neerajbalachandar.github.io/project/jellyfish/</link><pubDate>Thu, 11 Sep 2025 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/project/jellyfish/</guid><description>&lt;h2 id="problem">Problem&lt;/h2>
&lt;p>This project develops analytical models for tendon-actuated soft membranes inspired by jellyfish propulsion. The goal is to capture dominant deformation and propulsion mechanisms with compact, interpretable models.&lt;/p>
&lt;figure class="project-detail-figure">&lt;img src="https://neerajbalachandar.github.io/project/jellyfish/detail.png" alt="Analytical Model for Soft Robotic Membranes detail image" loading="lazy">&lt;/figure>
&lt;h2 id="approach">Approach&lt;/h2>
&lt;ul>
&lt;li>Cosserat rod modeling of membrane deformation&lt;/li>
&lt;li>Hydrodynamic force estimation via Lighthill&amp;rsquo;s theory&lt;/li>
&lt;li>Validation using immersed boundary simulations&lt;/li>
&lt;/ul></description></item><item><title>Chaotic Wake Dynamics of Flapping Wings</title><link>https://neerajbalachandar.github.io/project/flapping/</link><pubDate>Thu, 11 Sep 2025 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/project/flapping/</guid><description>&lt;h2 id="problem">Problem&lt;/h2>
&lt;p>This project studies chaotic wake evolution in flapping-wing flows. The goal is to extract low-dimensional descriptors that capture transitions to chaos and inform control-oriented modeling.&lt;/p>
&lt;figure class="project-detail-figure">&lt;img src="https://neerajbalachandar.github.io/project/flapping/detail.png" alt="Chaotic Wake Dynamics of Flapping Wings detail image" loading="lazy">&lt;/figure>
&lt;h2 id="approach">Approach&lt;/h2>
&lt;ul>
&lt;li>Graph-based representation of vortex interactions&lt;/li>
&lt;li>Information-theoretic metrics for chaos detection&lt;/li>
&lt;li>Comparative analysis across operating regimes&lt;/li>
&lt;/ul></description></item><item><title>Drone Swarm Rescue Simulation</title><link>https://neerajbalachandar.github.io/project/drone-swarm-rescue-simulation/</link><pubDate>Thu, 11 Sep 2025 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/project/drone-swarm-rescue-simulation/</guid><description>&lt;h2 id="problem">Problem&lt;/h2>
&lt;p>This project focuses on multi-agent rescue and transport in simulated environments. I explored navigation, coordination, and clustering methods for robust swarm behavior.&lt;/p>
&lt;figure class="project-detail-figure">&lt;img src="https://neerajbalachandar.github.io/project/drone-swarm-rescue-simulation/detail.png" alt="Drone Swarm Rescue Simulation detail image" loading="lazy">&lt;/figure>
&lt;h2 id="approach">Approach&lt;/h2>
&lt;ul>
&lt;li>Artificial potential fields for navigation&lt;/li>
&lt;li>RRT-based transport strategies&lt;/li>
&lt;li>Clustering comparisons (DBSCAN, K-means)&lt;/li>
&lt;/ul></description></item><item><title>Sparus AUV Modelling and Control</title><link>https://neerajbalachandar.github.io/project/sparus-auv-modelling-control/</link><pubDate>Sat, 01 Jun 2024 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/project/sparus-auv-modelling-control/</guid><description>&lt;h2 id="problem">Problem&lt;/h2>
&lt;p>Developed a hydrodynamic model for the Sparus AUV and implemented a Simulink-based stabilization controller for underactuated dynamics.&lt;/p>
&lt;figure class="project-detail-figure">&lt;img src="https://neerajbalachandar.github.io/project/sparus-auv-modelling-control/detail.png" alt="Sparus AUV Modelling and Control detail image" loading="lazy">&lt;/figure>
&lt;h2 id="approach">Approach&lt;/h2>
&lt;ul>
&lt;li>Derived a reduced hydrodynamic model suitable for control-oriented simulation.&lt;/li>
&lt;li>Implemented and tuned a Simulink stabilization loop for underactuated operating conditions.&lt;/li>
&lt;/ul></description></item><item><title>Neuro-Fuzzy PID Control</title><link>https://neerajbalachandar.github.io/project/neuro-fuzzy-pid-control/</link><pubDate>Sat, 01 Jun 2024 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/project/neuro-fuzzy-pid-control/</guid><description>&lt;h2 id="problem">Problem&lt;/h2>
&lt;p>Developed a neuro-fuzzy-based adaptive PID controller for a 2R manipulator with varying trajectories, emphasizing stability and performance across operating conditions.&lt;/p>
&lt;figure class="project-detail-figure">&lt;img src="https://neerajbalachandar.github.io/project/neuro-fuzzy-pid-control/detail.png" alt="Neuro-Fuzzy PID Control detail image" loading="lazy">&lt;/figure>
&lt;h2 id="approach">Approach&lt;/h2>
&lt;ul>
&lt;li>Designed a neuro-fuzzy adaptive tuning strategy to update PID gains under changing trajectories.&lt;/li>
&lt;li>Evaluated tracking stability and control smoothness across multiple excitation profiles.&lt;/li>
&lt;/ul></description></item><item><title>Parallelised SVD (C, OpenMP)</title><link>https://neerajbalachandar.github.io/project/parallelised-svd-openmp/</link><pubDate>Sat, 01 Jun 2024 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/project/parallelised-svd-openmp/</guid><description>&lt;h2 id="problem">Problem&lt;/h2>
&lt;p>Implemented and optimized a parallel SVD routine in C with OpenMP, focusing on scaling behavior and performance profiling.&lt;/p>
&lt;figure class="project-detail-figure">&lt;img src="https://neerajbalachandar.github.io/project/parallelised-svd-openmp/detail.png" alt="Parallelised SVD (C, OpenMP) detail image" loading="lazy">&lt;/figure>
&lt;h2 id="approach">Approach&lt;/h2>
&lt;ul>
&lt;li>Parallelized core matrix decomposition steps using OpenMP and optimized workload partitioning.&lt;/li>
&lt;li>Benchmarked strong and weak scaling to identify bottlenecks and quantify speedup.&lt;/li>
&lt;/ul></description></item><item><title>Physics Informed Fourier Neural Operator to Map Reformulated Vortex Particle Field to Eulerian Velocity Field</title><link>https://neerajbalachandar.github.io/publication/conference-paper/</link><pubDate>Wed, 01 Jul 2026 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/publication/conference-paper/</guid><description>&lt;p>Accepted for presentation at TSFP14 (Heidelberg, Germany, July 2026).&lt;/p></description></item><item><title>Experience</title><link>https://neerajbalachandar.github.io/experience/</link><pubDate>Sun, 29 Mar 2026 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/experience/</guid><description/></item><item><title>Research</title><link>https://neerajbalachandar.github.io/research/</link><pubDate>Sun, 29 Mar 2026 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/research/</guid><description/></item><item><title>Adaptive Trajectory Planning with Sequential Convex Programming for Drone-to-Drone Docking</title><link>https://neerajbalachandar.github.io/publication/preprint/</link><pubDate>Thu, 01 Jan 2026 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/publication/preprint/</guid><description>&lt;p>Accepted for presentation at AIAA SciTech 2026 (Session IS-24: Autonomy III).&lt;/p></description></item><item><title>Analytical Modelling of Deformable Membranes in Undulatory Motion Driven by Tendon-based Lappets in Biomimetic Jellyfish</title><link>https://neerajbalachandar.github.io/publication/tendon-membranes-jellyfish/</link><pubDate>Mon, 01 Dec 2025 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/publication/tendon-membranes-jellyfish/</guid><description>&lt;p>In process for submission to IEEE Transactions on Robotics.&lt;/p></description></item><item><title>On the Use of Gimbal-based Multi-DOF Platform for Hardware-in-Loop Reinforcement Learning for Characterizing the Dynamics of Underactuated Aerial Vehicles</title><link>https://neerajbalachandar.github.io/publication/gimbal-rl-underactuated-aerial/</link><pubDate>Mon, 01 Dec 2025 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/publication/gimbal-rl-underactuated-aerial/</guid><description>&lt;p>In process for submission to IEEE Transactions on Robotics.&lt;/p></description></item><item><title>VarFIExI - A Variable-Fidelity Framework for Unsteady Aeroelastic Coupling</title><link>https://neerajbalachandar.github.io/publication/journal-article/</link><pubDate>Mon, 01 Dec 2025 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/publication/journal-article/</guid><description>&lt;p>In process for submission to Computer Methods in Applied Mechanics and Engineering.&lt;/p></description></item><item><title>CIEDS, Ecole Polytechnique de Paris, Swarm Rescue Challenge</title><link>https://neerajbalachandar.github.io/event/second-talk/</link><pubDate>Tue, 01 Apr 2025 13:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/event/second-talk/</guid><description/></item><item><title>Swarm Rescue Challenge Recognition</title><link>https://neerajbalachandar.github.io/post/2025-swarm-rescue/</link><pubDate>Sat, 01 Mar 2025 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/post/2025-swarm-rescue/</guid><description>&lt;p>I was recognized at the Swarm Rescue Challenge organized by CIEDS-ENSTA, Ecole Polytechnique de Paris. The event focused on evaluating autonomous swarm strategies in simulation under mission-level constraints.&lt;/p></description></item><item><title>AIAA Sci-Tech forum 2025</title><link>https://neerajbalachandar.github.io/event/first-talk/</link><pubDate>Wed, 08 Jan 2025 13:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/event/first-talk/</guid><description/></item><item><title>Actuator System for Directional Manoeuvre of a Flapping Wing Aerial Vehicle</title><link>https://neerajbalachandar.github.io/publication/flapping-actuator-system/</link><pubDate>Wed, 01 Jan 2025 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/publication/flapping-actuator-system/</guid><description>&lt;p>Presented at AIAA SciTech 2025 (Session AS-08: Bio-inspired Adaptive Structures).&lt;/p></description></item><item><title>Selected for the Indian Academy of Sciences Summer Research Fellowship</title><link>https://neerajbalachandar.github.io/post/2024-ias-srf/</link><pubDate>Mon, 01 Apr 2024 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/post/2024-ias-srf/</guid><description>&lt;p>I received the Summer Research Fellowship from the Indian Academy of Sciences. This supported focused research time and mentorship in my areas of interest.&lt;/p></description></item><item><title>Joined the Dynamical Systems and Control Lab</title><link>https://neerajbalachandar.github.io/post/2024-dsclab/</link><pubDate>Thu, 01 Feb 2024 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/post/2024-dsclab/</guid><description>&lt;p>I joined the Dynamical Systems and Control Lab to pursue research in nonlinear dynamics, optimal control, and data-driven modeling for unsteady flows.&lt;/p></description></item><item><title>Learn JavaScript</title><link>https://neerajbalachandar.github.io/teaching/js/</link><pubDate>Tue, 24 Oct 2023 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/teaching/js/</guid><description>&lt;p>&lt;a href="https://hugoblox.com" target="_blank" rel="noopener">Hugo Blox Builder&lt;/a> is designed to give technical content creators a seamless experience. You can focus on the content and the Hugo Blox Builder which this template is built upon handles the rest.&lt;/p>
&lt;p>&lt;strong>Embed videos, podcasts, code, LaTeX math, and even test students!&lt;/strong>&lt;/p>
&lt;p>On this page, you&amp;rsquo;ll find some examples of the types of technical content that can be rendered with Hugo Blox.&lt;/p>
&lt;h2 id="video">Video&lt;/h2>
&lt;p>Teach your course by sharing videos with your students. Choose from one of the following approaches:&lt;/p>
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/D2vj0WcvH5c?autoplay=0&amp;controls=1&amp;end=0&amp;loop=0&amp;mute=0&amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"
>&lt;/iframe>
&lt;/div>
&lt;p>&lt;strong>Youtube&lt;/strong>:&lt;/p>
&lt;pre>&lt;code>{{&amp;lt; youtube w7Ft2ymGmfc &amp;gt;}}
&lt;/code>&lt;/pre>
&lt;p>&lt;strong>Bilibili&lt;/strong>:&lt;/p>
&lt;pre>&lt;code>{{&amp;lt; bilibili id=&amp;quot;BV1WV4y1r7DF&amp;quot; &amp;gt;}}
&lt;/code>&lt;/pre>
&lt;p>&lt;strong>Video file&lt;/strong>&lt;/p>
&lt;p>Videos may be added to a page by either placing them in your &lt;code>assets/media/&lt;/code> media library or in your &lt;a href="https://gohugo.io/content-management/page-bundles/" target="_blank" rel="noopener">page&amp;rsquo;s folder&lt;/a>, and then embedding them with the &lt;em>video&lt;/em> shortcode:&lt;/p>
&lt;pre>&lt;code>{{&amp;lt; video src=&amp;quot;my_video.mp4&amp;quot; controls=&amp;quot;yes&amp;quot; &amp;gt;}}
&lt;/code>&lt;/pre>
&lt;h2 id="podcast">Podcast&lt;/h2>
&lt;p>You can add a podcast or music to a page by placing the MP3 file in the page&amp;rsquo;s folder or the media library folder and then embedding the audio on your page with the &lt;em>audio&lt;/em> shortcode:&lt;/p>
&lt;pre>&lt;code>{{&amp;lt; audio src=&amp;quot;ambient-piano.mp3&amp;quot; &amp;gt;}}
&lt;/code>&lt;/pre>
&lt;p>Try it out:&lt;/p>
&lt;audio controls >
&lt;source src="https://neerajbalachandar.github.io/teaching/js/ambient-piano.mp3" type="audio/mpeg">
&lt;/audio>
&lt;h2 id="test-students">Test students&lt;/h2>
&lt;p>Provide a simple yet fun self-assessment by revealing the solutions to challenges with the &lt;code>spoiler&lt;/code> shortcode:&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-markdown" data-lang="markdown">&lt;span class="line">&lt;span class="cl">{{&lt;span class="p">&amp;lt;&lt;/span> &lt;span class="nt">spoiler&lt;/span> &lt;span class="na">text&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;👉 Click to view the solution&amp;#34;&lt;/span> &lt;span class="p">&amp;gt;&lt;/span>}}
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">You found me!
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">{{&lt;span class="p">&amp;lt;&lt;/span> &lt;span class="p">/&lt;/span>&lt;span class="nt">spoiler&lt;/span> &lt;span class="p">&amp;gt;&lt;/span>}}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>renders as&lt;/p>
&lt;details class="spoiler " id="spoiler-2">
&lt;summary class="cursor-pointer">👉 Click to view the solution&lt;/summary>
&lt;div class="rounded-lg bg-neutral-50 dark:bg-neutral-800 p-2">
You found me 🎉
&lt;/div>
&lt;/details>
&lt;h2 id="math">Math&lt;/h2>
&lt;p>Hugo Blox Builder supports a Markdown extension for $\LaTeX$ math. You can enable this feature by toggling the &lt;code>math&lt;/code> option in your &lt;code>config/_default/params.yaml&lt;/code> file.&lt;/p>
&lt;p>To render &lt;em>inline&lt;/em> or &lt;em>block&lt;/em> math, wrap your LaTeX math with &lt;code>{{&amp;lt; math &amp;gt;}}$...${{&amp;lt; /math &amp;gt;}}&lt;/code> or &lt;code>{{&amp;lt; math &amp;gt;}}$$...$${{&amp;lt; /math &amp;gt;}}&lt;/code>, respectively.&lt;/p>
&lt;div class="flex px-4 py-3 mb-6 rounded-md bg-primary-100 dark:bg-primary-900">
&lt;span class="pr-3 pt-1 text-primary-600 dark:text-primary-300">
&lt;svg height="24" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">&lt;path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m11.25 11.25l.041-.02a.75.75 0 0 1 1.063.852l-.708 2.836a.75.75 0 0 0 1.063.853l.041-.021M21 12a9 9 0 1 1-18 0a9 9 0 0 1 18 0m-9-3.75h.008v.008H12z"/>&lt;/svg>
&lt;/span>
&lt;span class="dark:text-neutral-300">We wrap the LaTeX math in the Hugo Blox &lt;em>math&lt;/em> shortcode to prevent Hugo rendering our math as Markdown.&lt;/span>
&lt;/div>
&lt;p>Example &lt;strong>math block&lt;/strong>:&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-latex" data-lang="latex">&lt;span class="line">&lt;span class="cl">&lt;span class="nb">{{&lt;/span>&amp;lt; math &amp;gt;&lt;span class="nb">}}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="sb">$$&lt;/span>&lt;span class="nb">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">&lt;/span>&lt;span class="nv">\gamma&lt;/span>&lt;span class="nb">_{n} &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\frac&lt;/span>&lt;span class="nb">{ &lt;/span>&lt;span class="nv">\left&lt;/span>&lt;span class="nb"> | &lt;/span>&lt;span class="nv">\left&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="o">(&lt;/span>&lt;span class="nv">\mathbf&lt;/span>&lt;span class="nb"> x_{n} &lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\mathbf&lt;/span>&lt;span class="nb"> x_{n&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">} &lt;/span>&lt;span class="nv">\right&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="o">)&lt;/span>&lt;span class="nb">^T &lt;/span>&lt;span class="nv">\left&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="o">[&lt;/span>&lt;span class="nv">\nabla&lt;/span>&lt;span class="nb"> F &lt;/span>&lt;span class="o">(&lt;/span>&lt;span class="nv">\mathbf&lt;/span>&lt;span class="nb"> x_{n}&lt;/span>&lt;span class="o">)&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\nabla&lt;/span>&lt;span class="nb"> F &lt;/span>&lt;span class="o">(&lt;/span>&lt;span class="nv">\mathbf&lt;/span>&lt;span class="nb"> x_{n&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">}&lt;/span>&lt;span class="o">)&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\right&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="o">]&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\right&lt;/span>&lt;span class="nb"> |}{&lt;/span>&lt;span class="nv">\left&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\|\nabla&lt;/span>&lt;span class="nb"> F&lt;/span>&lt;span class="o">(&lt;/span>&lt;span class="nv">\mathbf&lt;/span>&lt;span class="nb">{x}_{n}&lt;/span>&lt;span class="o">)&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\nabla&lt;/span>&lt;span class="nb"> F&lt;/span>&lt;span class="o">(&lt;/span>&lt;span class="nv">\mathbf&lt;/span>&lt;span class="nb">{x}_{n&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">}&lt;/span>&lt;span class="o">)&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\right&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\|&lt;/span>&lt;span class="nb">^&lt;/span>&lt;span class="m">2&lt;/span>&lt;span class="nb">}
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">&lt;/span>&lt;span class="s">$$&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">{{&lt;/span>&amp;lt; /math &amp;gt;&lt;span class="nb">}}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>renders as&lt;/p>
$$\gamma_{n} = \frac{ \left | \left (\mathbf x_{n} - \mathbf x_{n-1} \right )^T \left [\nabla F (\mathbf x_{n}) - \nabla F (\mathbf x_{n-1}) \right ] \right |}{\left \|\nabla F(\mathbf{x}_{n}) - \nabla F(\mathbf{x}_{n-1}) \right \|^2}$$
&lt;p>Example &lt;strong>inline math&lt;/strong> &lt;code>{{&amp;lt; math &amp;gt;}}$\nabla F(\mathbf{x}_{n})${{&amp;lt; /math &amp;gt;}}&lt;/code> renders as $\nabla F(\mathbf{x}_{n})$
.&lt;/p>
&lt;p>Example &lt;strong>multi-line math&lt;/strong> using the math linebreak (&lt;code>\\&lt;/code>):&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-latex" data-lang="latex">&lt;span class="line">&lt;span class="cl">&lt;span class="nb">{{&lt;/span>&amp;lt; math &amp;gt;&lt;span class="nb">}}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="sb">$$&lt;/span>&lt;span class="nb">f&lt;/span>&lt;span class="o">(&lt;/span>&lt;span class="nb">k;p_{&lt;/span>&lt;span class="m">0&lt;/span>&lt;span class="nb">}^{&lt;/span>&lt;span class="o">*&lt;/span>&lt;span class="nb">}&lt;/span>&lt;span class="o">)&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\begin&lt;/span>&lt;span class="nb">{cases}p_{&lt;/span>&lt;span class="m">0&lt;/span>&lt;span class="nb">}^{&lt;/span>&lt;span class="o">*&lt;/span>&lt;span class="nb">} &amp;amp; &lt;/span>&lt;span class="nv">\text&lt;/span>&lt;span class="nb">{if }k&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">, &lt;/span>&lt;span class="nv">\\&lt;/span>&lt;span class="nb">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="nb">p_{&lt;/span>&lt;span class="m">0&lt;/span>&lt;span class="nb">}^{&lt;/span>&lt;span class="o">*&lt;/span>&lt;span class="nb">} &amp;amp; &lt;/span>&lt;span class="nv">\text&lt;/span>&lt;span class="nb">{if }k&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="m">0&lt;/span>&lt;span class="nb">.&lt;/span>&lt;span class="nv">\end&lt;/span>&lt;span class="nb">{cases}&lt;/span>&lt;span class="s">$$&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">{{&lt;/span>&amp;lt; /math &amp;gt;&lt;span class="nb">}}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>renders as&lt;/p>
$$
f(k;p_{0}^{*}) = \begin{cases}p_{0}^{*} &amp; \text{if }k=1, \\
1-p_{0}^{*} &amp; \text{if }k=0.\end{cases}
$$
&lt;h2 id="code">Code&lt;/h2>
&lt;p>Hugo Blox Builder utilises Hugo&amp;rsquo;s Markdown extension for highlighting code syntax. The code theme can be selected in the &lt;code>config/_default/params.yaml&lt;/code> file.&lt;/p>
&lt;pre>&lt;code>```python
import pandas as pd
data = pd.read_csv(&amp;quot;data.csv&amp;quot;)
data.head()
```
&lt;/code>&lt;/pre>
&lt;p>renders as&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="kn">import&lt;/span> &lt;span class="nn">pandas&lt;/span> &lt;span class="k">as&lt;/span> &lt;span class="nn">pd&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">data&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">pd&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">read_csv&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;data.csv&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">data&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">head&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="inline-images">Inline Images&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-go" data-lang="go">&lt;span class="line">&lt;span class="cl">&lt;span class="p">{{&amp;lt;&lt;/span> &lt;span class="nx">icon&lt;/span> &lt;span class="nx">name&lt;/span>&lt;span class="p">=&lt;/span>&lt;span class="s">&amp;#34;python&amp;#34;&lt;/span> &lt;span class="p">&amp;gt;}}&lt;/span> &lt;span class="nx">Python&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>renders as&lt;/p>
&lt;p>
&lt;span class="inline-block pr-1">
&lt;svg style="height: 1em; transform: translateY(0.1em);" xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 448 512" fill="currentColor">&lt;path d="M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z"/>&lt;/svg>
&lt;/span> Python&lt;/p>
&lt;h2 id="did-you-find-this-page-helpful-consider-sharing-it-">Did you find this page helpful? Consider sharing it 🙌&lt;/h2></description></item><item><title>Learn Python</title><link>https://neerajbalachandar.github.io/teaching/python/</link><pubDate>Tue, 24 Oct 2023 00:00:00 +0000</pubDate><guid>https://neerajbalachandar.github.io/teaching/python/</guid><description>&lt;p>&lt;a href="https://hugoblox.com" target="_blank" rel="noopener">Hugo Blox Builder&lt;/a> is designed to give technical content creators a seamless experience. You can focus on the content and the Hugo Blox Builder which this template is built upon handles the rest.&lt;/p>
&lt;p>&lt;strong>Embed videos, podcasts, code, LaTeX math, and even test students!&lt;/strong>&lt;/p>
&lt;p>On this page, you&amp;rsquo;ll find some examples of the types of technical content that can be rendered with Hugo Blox.&lt;/p>
&lt;h2 id="video">Video&lt;/h2>
&lt;p>Teach your course by sharing videos with your students. Choose from one of the following approaches:&lt;/p>
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/D2vj0WcvH5c?autoplay=0&amp;controls=1&amp;end=0&amp;loop=0&amp;mute=0&amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"
>&lt;/iframe>
&lt;/div>
&lt;p>&lt;strong>Youtube&lt;/strong>:&lt;/p>
&lt;pre>&lt;code>{{&amp;lt; youtube w7Ft2ymGmfc &amp;gt;}}
&lt;/code>&lt;/pre>
&lt;p>&lt;strong>Bilibili&lt;/strong>:&lt;/p>
&lt;pre>&lt;code>{{&amp;lt; bilibili id=&amp;quot;BV1WV4y1r7DF&amp;quot; &amp;gt;}}
&lt;/code>&lt;/pre>
&lt;p>&lt;strong>Video file&lt;/strong>&lt;/p>
&lt;p>Videos may be added to a page by either placing them in your &lt;code>assets/media/&lt;/code> media library or in your &lt;a href="https://gohugo.io/content-management/page-bundles/" target="_blank" rel="noopener">page&amp;rsquo;s folder&lt;/a>, and then embedding them with the &lt;em>video&lt;/em> shortcode:&lt;/p>
&lt;pre>&lt;code>{{&amp;lt; video src=&amp;quot;my_video.mp4&amp;quot; controls=&amp;quot;yes&amp;quot; &amp;gt;}}
&lt;/code>&lt;/pre>
&lt;h2 id="podcast">Podcast&lt;/h2>
&lt;p>You can add a podcast or music to a page by placing the MP3 file in the page&amp;rsquo;s folder or the media library folder and then embedding the audio on your page with the &lt;em>audio&lt;/em> shortcode:&lt;/p>
&lt;pre>&lt;code>{{&amp;lt; audio src=&amp;quot;ambient-piano.mp3&amp;quot; &amp;gt;}}
&lt;/code>&lt;/pre>
&lt;p>Try it out:&lt;/p>
&lt;audio controls >
&lt;source src="https://neerajbalachandar.github.io/teaching/python/ambient-piano.mp3" type="audio/mpeg">
&lt;/audio>
&lt;h2 id="test-students">Test students&lt;/h2>
&lt;p>Provide a simple yet fun self-assessment by revealing the solutions to challenges with the &lt;code>spoiler&lt;/code> shortcode:&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-markdown" data-lang="markdown">&lt;span class="line">&lt;span class="cl">{{&lt;span class="p">&amp;lt;&lt;/span> &lt;span class="nt">spoiler&lt;/span> &lt;span class="na">text&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;👉 Click to view the solution&amp;#34;&lt;/span> &lt;span class="p">&amp;gt;&lt;/span>}}
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">You found me!
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">{{&lt;span class="p">&amp;lt;&lt;/span> &lt;span class="p">/&lt;/span>&lt;span class="nt">spoiler&lt;/span> &lt;span class="p">&amp;gt;&lt;/span>}}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>renders as&lt;/p>
&lt;details class="spoiler " id="spoiler-2">
&lt;summary class="cursor-pointer">👉 Click to view the solution&lt;/summary>
&lt;div class="rounded-lg bg-neutral-50 dark:bg-neutral-800 p-2">
You found me 🎉
&lt;/div>
&lt;/details>
&lt;h2 id="math">Math&lt;/h2>
&lt;p>Hugo Blox Builder supports a Markdown extension for $\LaTeX$ math. You can enable this feature by toggling the &lt;code>math&lt;/code> option in your &lt;code>config/_default/params.yaml&lt;/code> file.&lt;/p>
&lt;p>To render &lt;em>inline&lt;/em> or &lt;em>block&lt;/em> math, wrap your LaTeX math with &lt;code>{{&amp;lt; math &amp;gt;}}$...${{&amp;lt; /math &amp;gt;}}&lt;/code> or &lt;code>{{&amp;lt; math &amp;gt;}}$$...$${{&amp;lt; /math &amp;gt;}}&lt;/code>, respectively.&lt;/p>
&lt;div class="flex px-4 py-3 mb-6 rounded-md bg-primary-100 dark:bg-primary-900">
&lt;span class="pr-3 pt-1 text-primary-600 dark:text-primary-300">
&lt;svg height="24" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">&lt;path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m11.25 11.25l.041-.02a.75.75 0 0 1 1.063.852l-.708 2.836a.75.75 0 0 0 1.063.853l.041-.021M21 12a9 9 0 1 1-18 0a9 9 0 0 1 18 0m-9-3.75h.008v.008H12z"/>&lt;/svg>
&lt;/span>
&lt;span class="dark:text-neutral-300">We wrap the LaTeX math in the Hugo Blox &lt;em>math&lt;/em> shortcode to prevent Hugo rendering our math as Markdown.&lt;/span>
&lt;/div>
&lt;p>Example &lt;strong>math block&lt;/strong>:&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-latex" data-lang="latex">&lt;span class="line">&lt;span class="cl">&lt;span class="nb">{{&lt;/span>&amp;lt; math &amp;gt;&lt;span class="nb">}}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="sb">$$&lt;/span>&lt;span class="nb">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">&lt;/span>&lt;span class="nv">\gamma&lt;/span>&lt;span class="nb">_{n} &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\frac&lt;/span>&lt;span class="nb">{ &lt;/span>&lt;span class="nv">\left&lt;/span>&lt;span class="nb"> | &lt;/span>&lt;span class="nv">\left&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="o">(&lt;/span>&lt;span class="nv">\mathbf&lt;/span>&lt;span class="nb"> x_{n} &lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\mathbf&lt;/span>&lt;span class="nb"> x_{n&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">} &lt;/span>&lt;span class="nv">\right&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="o">)&lt;/span>&lt;span class="nb">^T &lt;/span>&lt;span class="nv">\left&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="o">[&lt;/span>&lt;span class="nv">\nabla&lt;/span>&lt;span class="nb"> F &lt;/span>&lt;span class="o">(&lt;/span>&lt;span class="nv">\mathbf&lt;/span>&lt;span class="nb"> x_{n}&lt;/span>&lt;span class="o">)&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\nabla&lt;/span>&lt;span class="nb"> F &lt;/span>&lt;span class="o">(&lt;/span>&lt;span class="nv">\mathbf&lt;/span>&lt;span class="nb"> x_{n&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">}&lt;/span>&lt;span class="o">)&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\right&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="o">]&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\right&lt;/span>&lt;span class="nb"> |}{&lt;/span>&lt;span class="nv">\left&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\|\nabla&lt;/span>&lt;span class="nb"> F&lt;/span>&lt;span class="o">(&lt;/span>&lt;span class="nv">\mathbf&lt;/span>&lt;span class="nb">{x}_{n}&lt;/span>&lt;span class="o">)&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\nabla&lt;/span>&lt;span class="nb"> F&lt;/span>&lt;span class="o">(&lt;/span>&lt;span class="nv">\mathbf&lt;/span>&lt;span class="nb">{x}_{n&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">}&lt;/span>&lt;span class="o">)&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\right&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\|&lt;/span>&lt;span class="nb">^&lt;/span>&lt;span class="m">2&lt;/span>&lt;span class="nb">}
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">&lt;/span>&lt;span class="s">$$&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">{{&lt;/span>&amp;lt; /math &amp;gt;&lt;span class="nb">}}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>renders as&lt;/p>
$$\gamma_{n} = \frac{ \left | \left (\mathbf x_{n} - \mathbf x_{n-1} \right )^T \left [\nabla F (\mathbf x_{n}) - \nabla F (\mathbf x_{n-1}) \right ] \right |}{\left \|\nabla F(\mathbf{x}_{n}) - \nabla F(\mathbf{x}_{n-1}) \right \|^2}$$
&lt;p>Example &lt;strong>inline math&lt;/strong> &lt;code>{{&amp;lt; math &amp;gt;}}$\nabla F(\mathbf{x}_{n})${{&amp;lt; /math &amp;gt;}}&lt;/code> renders as $\nabla F(\mathbf{x}_{n})$
.&lt;/p>
&lt;p>Example &lt;strong>multi-line math&lt;/strong> using the math linebreak (&lt;code>\\&lt;/code>):&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-latex" data-lang="latex">&lt;span class="line">&lt;span class="cl">&lt;span class="nb">{{&lt;/span>&amp;lt; math &amp;gt;&lt;span class="nb">}}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="sb">$$&lt;/span>&lt;span class="nb">f&lt;/span>&lt;span class="o">(&lt;/span>&lt;span class="nb">k;p_{&lt;/span>&lt;span class="m">0&lt;/span>&lt;span class="nb">}^{&lt;/span>&lt;span class="o">*&lt;/span>&lt;span class="nb">}&lt;/span>&lt;span class="o">)&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="nb"> &lt;/span>&lt;span class="nv">\begin&lt;/span>&lt;span class="nb">{cases}p_{&lt;/span>&lt;span class="m">0&lt;/span>&lt;span class="nb">}^{&lt;/span>&lt;span class="o">*&lt;/span>&lt;span class="nb">} &amp;amp; &lt;/span>&lt;span class="nv">\text&lt;/span>&lt;span class="nb">{if }k&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="nb">, &lt;/span>&lt;span class="nv">\\&lt;/span>&lt;span class="nb">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">&lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="nb">p_{&lt;/span>&lt;span class="m">0&lt;/span>&lt;span class="nb">}^{&lt;/span>&lt;span class="o">*&lt;/span>&lt;span class="nb">} &amp;amp; &lt;/span>&lt;span class="nv">\text&lt;/span>&lt;span class="nb">{if }k&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="m">0&lt;/span>&lt;span class="nb">.&lt;/span>&lt;span class="nv">\end&lt;/span>&lt;span class="nb">{cases}&lt;/span>&lt;span class="s">$$&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">{{&lt;/span>&amp;lt; /math &amp;gt;&lt;span class="nb">}}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>renders as&lt;/p>
$$
f(k;p_{0}^{*}) = \begin{cases}p_{0}^{*} &amp; \text{if }k=1, \\
1-p_{0}^{*} &amp; \text{if }k=0.\end{cases}
$$
&lt;h2 id="code">Code&lt;/h2>
&lt;p>Hugo Blox Builder utilises Hugo&amp;rsquo;s Markdown extension for highlighting code syntax. The code theme can be selected in the &lt;code>config/_default/params.yaml&lt;/code> file.&lt;/p>
&lt;pre>&lt;code>```python
import pandas as pd
data = pd.read_csv(&amp;quot;data.csv&amp;quot;)
data.head()
```
&lt;/code>&lt;/pre>
&lt;p>renders as&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="kn">import&lt;/span> &lt;span class="nn">pandas&lt;/span> &lt;span class="k">as&lt;/span> &lt;span class="nn">pd&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">data&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">pd&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">read_csv&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;data.csv&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">data&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">head&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="inline-images">Inline Images&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-go" data-lang="go">&lt;span class="line">&lt;span class="cl">&lt;span class="p">{{&amp;lt;&lt;/span> &lt;span class="nx">icon&lt;/span> &lt;span class="nx">name&lt;/span>&lt;span class="p">=&lt;/span>&lt;span class="s">&amp;#34;python&amp;#34;&lt;/span> &lt;span class="p">&amp;gt;}}&lt;/span> &lt;span class="nx">Python&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>renders as&lt;/p>
&lt;p>
&lt;span class="inline-block pr-1">
&lt;svg style="height: 1em; transform: translateY(0.1em);" xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 448 512" fill="currentColor">&lt;path d="M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z"/>&lt;/svg>
&lt;/span> Python&lt;/p>
&lt;h2 id="did-you-find-this-page-helpful-consider-sharing-it-">Did you find this page helpful? Consider sharing it 🙌&lt;/h2></description></item></channel></rss>