{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "Model object and parameter access\n", "=============================" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "------------------- Parameter summary --------------------\n", " A = 0, free: F, restricted: F, related: F\n", " mu = 0, free: F, restricted: F, related: F\n", " sig = 0, free: F, restricted: F, related: F\n", " off = 0, free: F, restricted: F, related: F\n", " lin = 0, free: F, restricted: F, related: F\n", "----------------------------------------------------------\n", "\n", "Parameters values: \n", " A : -10.0\n", " sig : 15.77\n", " off : 0.96\n", " mu : 7.5\n", "\n", "------------------- Parameter summary --------------------\n", " A = 0.75, free: F, restricted: F, related: F\n", " mu = 0.75, free: F, restricted: F, related: F\n", " sig = 0.75, free: F, restricted: F, related: F\n", " off = 1, free: F, restricted: F, related: F\n", " lin = 0.75, free: F, restricted: F, related: F\n", "----------------------------------------------------------\n", "\n", "Parameter name/value dictionary: OrderedDict([('A', 0.75), ('mu', 0.75), ('sig', 0.75), ('off', 1.0), ('lin', 0.75)])\n" ] } ], "source": [ "from __future__ import print_function, division\n", "from PyAstronomy import funcFit2 as fuf2\n", "\n", "# Create a a model object representing a Gaussian\n", "gf = fuf2.GaussFit()\n", "\n", "# Get some information on the available parameters\n", "gf.parameterSummary()\n", "\n", "# Parameters can be accessed using the square bracket\n", "# notation\n", "gf[\"A\"] = -10.0\n", "gf[\"sig\"] = 15.77\n", "gf[\"off\"] = 0.96\n", "gf[\"mu\"] = 7.5\n", "print()\n", "print(\"Parameters values: \")\n", "print(\" A : \", gf[\"A\"])\n", "print(\" sig : \", gf[\"sig\"])\n", "print(\" off : \", gf[\"off\"])\n", "print(\" mu : \", gf[\"mu\"])\n", "print()\n", "\n", "# Wildcards can be used to specify parameters\n", "gf[\"*\"] = 0.75\n", "gf[\"o?f\"] = 1.0 \n", "\n", "# More convenient overview of parameter status\n", "gf.parameterSummary()\n", "print()\n", "\n", "# Exporting and assigning parameter values via dictionary\n", "ps = gf.parameters()\n", "print(\"Parameter name/value dictionary: \", ps)\n", "# Assigning values from dictionary (identical values here)\n", "gf.assignValues(ps)" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.6.10" } }, "nbformat": 4, "nbformat_minor": 4 }