你已经派生过 gprMax
镜像自地址
https://gitee.com/sunhf/gprMax.git
已同步 2025-08-06 12:36:51 +08:00
Updates to user libraries docs.
这个提交包含在:
@@ -4,6 +4,12 @@ User libraries is a sub-package where useful Python modules contributed by users
|
||||
Antennas
|
||||
********
|
||||
|
||||
Information
|
||||
===========
|
||||
|
||||
Author/Contact: Craig Warren (Craig.Warren@ed.ac.uk), University of Edinburgh
|
||||
License: Creative Commons Attribution-ShareAlike 4.0 International License (http://creativecommons.org/licenses/by-sa/4.0/)
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
# Copyright (C) 2015-2016, Craig Warren
|
||||
@@ -20,7 +26,21 @@ The module currently features models of antennas similar to commercial antennas:
|
||||
|
||||
A description of how the models were created can be found at http://dx.doi.org/10.1190/1.3548506.
|
||||
|
||||
The antenna models can be accessed from within a block of Python code in your simulation. The models must be used with cubic spatial resolutions of either 1mm (default) or 2mm. For example, to use Python to include an antenna model similar to a GSSI 1.5 GHz antenna at a location 0.125m, 0.094m, 0.100m (x,y,z):
|
||||
Module overview
|
||||
===============
|
||||
|
||||
* `antennas.py` is a module containing the descriptions of the antennas.
|
||||
|
||||
|
||||
How to use the module
|
||||
=====================
|
||||
|
||||
The antenna models can be accessed from within a block of Python code in an input file. The models must be used with cubic spatial resolutions of either 1mm (default) or 2mm.
|
||||
|
||||
Example
|
||||
-------
|
||||
|
||||
To include an antenna model similar to a GSSI 1.5 GHz antenna at a location 0.125m, 0.094m, 0.100m (x,y,z):
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
|
@@ -1,11 +1,16 @@
|
||||
User libraries is a sub-package where useful Python modules contributed by users are stored.
|
||||
|
||||
**UNDER CONSTRUCTION**
|
||||
|
||||
***********************
|
||||
AustinMan & AustinWoman
|
||||
***********************
|
||||
|
||||
Information
|
||||
===========
|
||||
|
||||
Authors: Jackson W. Massey, Cemil S. Geyik, Jungwook Choi, Hyun-Jae Lee, Natcha Techachainiran, Che-Lun Hsu, Robin Q. Nguyen, Trevor Latson, Madison Ball, and Ali E. Yılmaz
|
||||
Contact: Ali E. Yılmaz (ayilmaz@mail.utexas.edu), The University of Texas at Austin
|
||||
License: Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License (http://creativecommons.org/licenses/by-nc-nd/3.0/)
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
# This module is licensed under the Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License.
|
||||
@@ -18,7 +23,7 @@ AustinMan and AustinWoman (http://bit.ly/AustinMan) are open source electromagne
|
||||
.. figure:: images/AustinMan_head.png
|
||||
:width: 600 px
|
||||
|
||||
FDTD geometry mesh showing the head of the AustinMan model.
|
||||
FDTD geometry mesh showing the head of the AustinMan model (2x2x2mm^3).
|
||||
|
||||
The AustinMan and AustinWoman models are not currently included in the user libraries sub-package, however they can be downloaded from http://bit.ly/AustinMan.
|
||||
|
||||
@@ -34,10 +39,13 @@ AustinMan 1x1x1 683x374x1877
|
||||
AustinWoman 8x8x8 86x47x217
|
||||
AustinWoman 4x4x4 171x94x433
|
||||
AustinWoman 2x2x2 342x187x865
|
||||
AustinWoman 1x1x1
|
||||
AustinWoman 1x1x1 683x374x1730
|
||||
=========== ================= ==================
|
||||
|
||||
To use the models with gprMax:
|
||||
How to use the models
|
||||
=====================
|
||||
|
||||
From http://bit.ly/AustinMan:
|
||||
|
||||
* Download a HDF5 file (.h5) of AustinMan or AustinWoman at the resolution you wish to use.
|
||||
* Download a text file of material descriptions for gprMax, either
|
||||
@@ -45,7 +53,12 @@ To use the models with gprMax:
|
||||
* ``AustinManWoman_gprMax_materials.txt`` for non-dispersive material properties at 900 MHz (http://niremf.ifac.cnr.it/tissprop/).
|
||||
* ``AustinManWoman_gprMax_materials_dispersive.txt`` for dispersive material properties that feature a 3-pole Debye model (http://dx.doi.org/10.1109/LMWC.2011.2180371). Not all materials have a dispersive description.
|
||||
|
||||
To insert either AustinMan or AustinWoman into a model use the ``#geometry_objects_file``. For example, to insert a 2x2x2mm^3 AustinMan with the lower left corner 40mm from the origin of the domain, and using disperive material properties, use the command:
|
||||
To insert either AustinMan or AustinWoman into a model use the ``#geometry_objects_file``.
|
||||
|
||||
Example
|
||||
-------
|
||||
|
||||
To insert a 2x2x2mm^3 AustinMan with the lower left corner 40mm from the origin of the domain, and using disperive material properties, use the command:
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
@@ -56,7 +69,7 @@ For further information on the `#geometry_objects_file` see the section on objec
|
||||
.. figure:: images/AustinMan.png
|
||||
:width: 300 px
|
||||
|
||||
FDTD geometry mesh showing the AustinMan body model.
|
||||
FDTD geometry mesh showing the AustinMan body model (2x2x2mm^3).
|
||||
|
||||
|
||||
|
||||
|
@@ -6,6 +6,12 @@ User libraries is a sub-package where useful Python modules contributed by users
|
||||
Optimisation - Taguchi
|
||||
**********************
|
||||
|
||||
Information
|
||||
===========
|
||||
|
||||
Author/Contact: Craig Warren (Craig.Warren@ed.ac.uk), University of Edinburgh
|
||||
License: Creative Commons Attribution-ShareAlike 4.0 International License (http://creativecommons.org/licenses/by-sa/4.0/)
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
# Copyright (C) 2015-2016, Craig Warren
|
||||
@@ -15,12 +21,13 @@ Optimisation - Taguchi
|
||||
#
|
||||
# Please use the attribution at http://dx.doi.org/10.1190/1.3548506
|
||||
|
||||
The module features an optimisation technique based on Taguchi's method. It allows the user to define parameters in an input file and optimise their values based on a user-defined fitness function.
|
||||
The package features an optimisation technique based on Taguchi's method. It allows the user to define parameters in an input file and optimise their values based on a fitness function.
|
||||
|
||||
|
||||
Taguchi's method
|
||||
================
|
||||
----------------
|
||||
|
||||
Taguchi's method is based on the concept of Orthogonal Array (OA) and has the following advantages:
|
||||
Taguchi's method is based on the concept of the Orthogonal Array (OA) and has the following advantages:
|
||||
|
||||
* Simple to implement
|
||||
* Effective in reduction of experiments
|
||||
@@ -35,12 +42,39 @@ Details of Taguchi's method in the context of electromagnetics can be found in [
|
||||
|
||||
Process associated with Taguchi's method.
|
||||
|
||||
Implementation
|
||||
==============
|
||||
|
||||
Package overview
|
||||
================
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
OA_9_4_3_2.npy
|
||||
OA_18_7_3_2.npy
|
||||
optimisation_taguchi_fitness.py
|
||||
optimisation_taguchi_plot.py
|
||||
|
||||
* `OA_9_4_3_2.npy` and `OA_18_7_3_2.npy` are NumPy archive containing pre-built OAs from http://neilsloane.com/oadir/
|
||||
* `optimisation_taguchi_fitness.py` is a module containing fitness functions. There are some pre-built ones but users should add their own here.
|
||||
* `optimisation_taguchi_plot.py` is a module for plotting the results, such as parameter values and convergence history, from an optimisation process when it has completed.
|
||||
|
||||
|
||||
How to use the package
|
||||
======================
|
||||
|
||||
Parameters to optimise
|
||||
----------------------
|
||||
|
||||
The module will select from 2 pre-built OAs (http://neilsloane.com/oadir/) depending on the number of parameters to optimise. Currently, up to 7 independent parameters can be optimised, although a method to construct OAs of any size is under testing.
|
||||
|
||||
|
||||
Fitness functions
|
||||
-----------------
|
||||
|
||||
A fitness function is required
|
||||
A fitness function is required to set a goal against which to compare results from the optimisation process. A number of pre-built fitness functions can be found in the `optimisation_taguchi_fitness.py` module, such as `minvalue`, `maxvalue` and `xcorr`. Users can easily add their own fitness functions to this module. All fitness functions must take two arguments and return a single fitness value which will be maximised. The arguments must be:
|
||||
|
||||
* `filename` a string containing the full path and filename of the output file
|
||||
* `args` a dictionary which can contain any number of additional arguments for the function, e.g. names (IDs) of outputs (rxs) from input file
|
||||
|
||||
|
||||
Example
|
||||
-------
|
在新工单中引用
屏蔽一个用户