Skip to content

Instantly share code, notes, and snippets.

@guyer
Created October 22, 2015 13:43
Show Gist options
  • Save guyer/a61d5adfa9a050eb970a to your computer and use it in GitHub Desktop.
Save guyer/a61d5adfa9a050eb970a to your computer and use it in GitHub Desktop.
IPython notebook demonstrating setting an internal boundary condition in FiPy
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"%matplotlib inline"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import fipy as fp"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"mesh = fp.Grid1D(nx=200, dx=0.01)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"V = fp.CellVariable(mesh=mesh, name=\"V\")"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"fipy/viewers/matplotlibViewer/__init__.py:113: UserWarning: Matplotlib1DViewer efficiency is improved by setting the 'datamax' and 'datamin' keys\n",
" return Matplotlib1DViewer(vars=vars, title=title, axes=axes, **kwlimits)\n"
]
},
{
"data": {
"image/png": "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\nYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1065d3190>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"viewer = fp.MatplotlibViewer(vars=V)"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"charge = -1. * (mesh.x < 0.5) + 1. * (mesh.x > 1.5)\n",
"charge.name = \"rho\""
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"conductor = (mesh.x > 0.7) & (mesh.x < 1.2)\n",
"conductor.name = \"conductor\""
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"dielectric = 1."
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"largeValue = 1e6"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"conductorPotential = 12."
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"eq = fp.DiffusionTerm(coeff=dielectric) + charge == fp.ImplicitSourceTerm(coeff=conductor * largeValue) - conductor * largeValue * conductorPotential"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"eq.solve(var=V)"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nSP4f5Xvx1BG06poAAAAASUVORK5CYII=\n"
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"<matplotlib.figure.Figure at 0x10692a950>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"viewer.plot()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 2",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.10"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment