Flame Ionization Current in Cantera

81 views
Skip to first unread message

Roberto Paolinelli

unread,
Jan 21, 2022, 2:25:30 PM1/21/22
to Cantera Users' Group
Hello,
we have the same problems as here, using CH4 and air...

We are going to model the ionization current of a flame fluid in an external electric field but we have found the following methods in Transport class are throwing an unimplemented exception at least in C++:
  1. getElectricCurrent()
  2. ionConductivity()
  3. getElectricConduct()
When will they be implemented in C++?
Do you know if Cantera Python or Matlab interface are more ahead than C++?

Does Cantera support the addition of an external electric field in a combustor? What classes should we use?

Anyway, if none was implemented we would need to write the equations taking inspiration for example from
and
Should we implement these equations, is Cantera able to solve them (and how?) or shall we implement the solver too?

Thank you very much
Best Regards
Roberto

Bang-Shiuh Chen

unread,
Jan 21, 2022, 3:18:36 PM1/21/22
to Cantera Users' Group
Hi Roberto,

You can find useful information in C++ class IonFlow in the oneD folder for 1D flame charged species simulation. For now, the external electric field is not supported. However, you can change the boundary condition of electric field strength to achieve a similar result.

- getElectricCurrent()
We do not have this function yet but you can obtain electric current easily. You will need to know electron number density, electron mobility, and electric field strength. Ex. mu * E * ne * A. mu is the mobility, E is the electric field strength. The product of E and mu is the drift velocity. ne is the electron density and A is the cross-section area.

- IonConductivity() getElectricConduct()
We already have this function. It is IonGasTransport::electricalConductivity(). However, use it carefully because it assumes the mobility of electron to be 0.4.

Look forward to discussing this if you have questions!

Best,
Bang

Roberto Paolinelli

unread,
Jan 25, 2022, 4:05:39 PM1/25/22
to Cantera Users' Group
Hello Bang,
thanks for your kind reply.
My model is a reactor in which a methane/air mixture burns . The reactor has connected to three reservoirs of methane, air and combustion gas respectively. There is also a wall through which it the ignition energy flows.
We have well modeled temperature, species concentration and combustion power as a functions of time.
However the last goal remains, which is calculating the ionization current i(t).

If I understood correctly, your advice is to build a 1D grid in which  using the class IonFlow, didn't I?
I was thinking to use freeflame.cpp as example, but it seems to resolve only in the space domain, while I need the ionization current as a function of time too.

I would like to know if and how the IonFlow class based 1D model you have suggested can be integrated with my lumped parameters model function of time.
Should IonFlow methods be used Vs time, where can I find properties/methods for ne, mu, and informations about E Vs space once it is imposed at boundaries?

Thanks a lot,
Best Regards
Roberto

Bang-Shiuh Chen

unread,
Feb 3, 2022, 6:52:05 PM2/3/22
to Cantera Users' Group
Hi Robert,

The model is for 1D flame. For now the class only calculates the internal electric field and there is no current (the positive and negative charges cancel out each other). For your model you would want to look into IonGasTransport where I implement the n64 model which is an extension to Lennar-jones model to account for the collision of ions and neutral gas molecule. Please see the file IonGasTransport.h https://cantera.org/documentation/dev/doxygen/html/d8/d57/IonGasTransport_8h_source.html to more info.

Best,
Bang

Roberto Paolinelli

unread,
Feb 4, 2022, 3:44:00 AM2/4/22
to Cantera Users' Group
Hello Bang
thanks a lot for your informations
Best Regards
Roberto

Reply all
Reply to author
Forward
0 new messages