Expression

Type:string
Range:[]
Default:-/-
Appearance:simple
Excludes:Function, Module

This parameter is used to define a tensor field of type “force density” by means of a Python expression within the .jcm input file. The syntax is the following:

ForceDensity {
  Python {
     Expression = " ... # your python scripting
                    ...
                    value = ... # set return value

                   "

     # define one or more parameters
     Parameter {
       Name = "Para1"
       ...
     }
     Parameter {
       Name = "Para2"
       ...

     }
  }
}

The string value Expression has to be valid Python code and is interpreted in the following way:

  • The NumPy-package is automatically imported when evaluating the expression.
  • Any parameter as defined by a Parameter section is available within the Python expression as an NumPy object named accordingly to the value of the parameter Name.
  • The position \pvec{x} and the time t are available as NumPy objects name X and t respectively.
  • For time-harmonic electromagnetic problems the angular frequency \omega can be addressed by EMOmega, (EM stands for electromagnetic).
  • The expression must define a NumPy object named value which contains the return value of appropriate shape (force density is a 3-vector).
  • Keep in mind the Python indentation rule.