{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "8a8b2441-3b0b-461f-9ee7-f5fd9678b558",
   "metadata": {},
   "source": [
    "# Advanced Linear Solver Algorithms for Special Cases\n",
    "\n",
    "There are certain cases where it is possible to further improve linear solver performance via the application of specialized algorithms. In some cases, the application of these algorithms can have an impact on whether you choose the forward or reverse mode for derivative solves. This section details the types of structures within a model that are necessary in order to benefit from these algorithms.\n",
    "\n",
    "- [Solving for Derivatives of Multiple Separable Constraints Using a Single Linear Solve](separable.ipynb)\n",
    "- [Parallelizing Derivative Solves of Multipoint Models At a Small Memory Cost](fan_out.ipynb)\n"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.1"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
