Hi Robert,

  Sorry for being slow to get back to this but I was busy on another project and then since I was using the version of SfePy that comes with the Enthought Canopy distribution I had to install the version you pointed me to and it took a bit to get everything to compile and work on my Mac. But I got it to work and the updated version with evaluating the piezo stress works. I have a simple test that I found in someone's thesis. If one has a material of large extent in the x and y directions compared to the z directions, then it will behave somewhat like a 1D system. In that case, if one sets phi on the bottom to be zero and some value on the top, then the strain that will arise due to the resulting field (Ez = -(phi_top - phi_bot)/dz can be estimated from the fact that the stress is zero. Thus, the strain eps_zz = (e_zz/C_zz)*E_z where e and C are the piezo and elastic constants. And this is in fact what happens when you do this in SfePy. 

Thanks for adding this to the code.

Another quick question if you don't mind. When using probes, is there a way to output the coordinate values of the probe positions rather than plot the probe values versus (essentially) the index number of the probe?

Thanks again.


On Wednesday, August 5, 2015 at 6:11:30 AM UTC-7, Dennis Perchak wrote:
I have been doing some modeling of a piezoelectric system and it works well. One can apply a field and see the resulting deformation.  I also get how one can calculate the Cauchy strain and stress using the post-process hook and the terms 'ev_cauchy_strain.2.Omega(u)' and 'ev_cauchy_stress.2.Omega(solid.D, u)'.  But since the constitutive law for the stress is the Cauchy term + the piezo-coupling term, how does one evaluate the stress and output it for given displacements and fields?