be derived by chain rule indirectly. After applying the stochastic gradient descent, the optimal , and could be achieved. Subsequently, these quantities are used to carve or mill the material to generate the target pattern. Implementation One common approach is to utilize the ability to perform differential operations in various deep learning auto-differentiation frameworks/libraries such as: Tensorflow, PyTorch, Theano. One more approach is to make use of the OpenDR framework to build a forward graphics model and to automatically obtain derivatives with respect to the model parameters for optimization. As optimization properties are obtained, the target image can be generated. OpenDR provides a local optimization method that can be incorporated into probabilistic programming frameworks. This can be used to solve the problem of caustic. Manufacturing Once the caustic pattern has been designed computationally, the processed data will be then sent to the manufacturing stage to get the final product. The most common approach is subtractive manufacturing (machining). Various materials can be used depending on the desired quality, the effort it takes to manufacture, and the available manufacturing method. Common refractive materials: acrylic, polycarbonate, polyethylene, glass, diamond Common reflective materials: steel, iron, aluminum, gold, silver, titanium, nickel Caustic pattern design has many real-world applications, for example in: Luminaires Jewelry Architecture Decorative glass production See also Focus (optics) Circle of confusion Caustic (mathematics) References Further reading Geometrical optics