Radial polarisation on sphere

I don’t know, how to put radial polarisation on pzt sphere.please help me.

11 comments

  • Please use the axis option in the definition of radial poling. This article gives an example of how to do that.

    Comment actions Permalink
  • I read this article and tried in this way. but i got error like this when I preview the model

    **** PZFlex has detected an error****

    ****Subroutines tracked are: pizinp jobctl flex

    ****Error occurred in subroutine pizinp ****

    ****Error message--data group member out of range

    0 1030301

    Comment actions Permalink
  • Can you please show the formulation of the axis command

    Comment actions Permalink
  • I modelled a PZT hollow sphere in OnScale designer mode and export model input. 

    Comment actions Permalink
  • It does not appear that there is anything incorrect about your axis definition. However for the matr axis subcommand, you define thetabeg thetaend and ntheta, how e4ver you do not define phibeg phiend and nphi. The correct syntax of the command in the command reference is as follows:

    axis matname axisname option thetabeg thetaend ntheta phibeg phiend nphi
    Comment actions Permalink
  • The error that you reference might be unrelated to the polarization. Can you confirm that this goes away with standard poling directions?

    Comment actions Permalink
  • Hello, 

    No. with standard poling directions, it run.
    I want to simulate a pzt hollow sphere with radial polarization in OnScale. but i don't know how to create radial polarization on a sphere. Normally I have used x+,x-,y+,y-,z+  and z-  polling options. I have read some articles regarding radial polarization on cylinders, etc. in the OnScale site. But i didn't get the exact idea. I am using OnScale designer mode.I modelled a PZT hollow sphere in OnScale designer mode and export model input. also, I would like to know if there are any options to see the polarization directions in Onscale after or before simulations to confirm whether it was made correctly or not. please consider it.

     

    Comment actions Permalink
  • You need to define phibeg phiend and nphi as in the command presented in the last message. If you are having issues you can reduce ntheta and nphi to 6 for example. 

    Regarding plotting, the example in the article plots the piezo electric materials with regions with different poling directions showing different colors. Alternatively, you can use the arrow subcommand of grph

    grph
    type stnd
    arrow pole
    plot matr
    end
    Comment actions Permalink
  • Can you please explain it with an example. I am using OnScale in designer mode only. OnScale analyst mode is not so familiar for me.

    Comment actions Permalink
  • Unfortunately, this cannot be done with Designer. You will have to use Analyst. You can generate Analyst script from Designer by clicking the "Save Solver Input" button. Please see the example below

    mem 800 4000 /* Allocate 800 megawords of memory - 3 GigaBytes (Not necesarry for Windows Operating Systems)
    c NOTE: MEM Command must be first command in file, if used. (Line 1)
    rest no 
     
    c ************************************************************************************************************* 
    c Generated Flex Input File
    c ************************************************************************************************************* 
    c DESIGNER :OnScale - Designer Generated
    c MODEL DESCRIPTION :
    c DATE CREATED :18 Jun 2019
    c VERSION :1.0
    c ************************************************************************************************************* 
     
    mp
    omp * *  /* Number of CPUs to be used in the execution.
    end
     
    titl Example 
     
    c ************************************************************************************************************* 
    c Define User Variables 
    c ************************************************************************************************************* 
    c These variables have been set by the user through the interface.
    c ************************************************************************************************************* 
     
    symb coordFactor = 1.0 /* Coordinate conversion factor
    symb timeFactor = 1.0 /* Time conversion factor
    symb dMassFactor = 1.0 /* Mass conversion factor
    symb freqint = 1e+6 /* Determined Drive Frequency (Hz)
     
    c ************************************************************************************************************* 
    c Define Meshing 
    c ************************************************************************************************************* 
    c Set the variable for the approximate element size for the model. Must be 
    c sufficient to represent the wavelengths of interest. Recommended that at least 
    c 15 elements per wavelength are used.
     
    c ************************************************************************************************************* 
     
    symb freqdamp = $freqint
    symb box = 0.02
     
    c ************************************************************************************************************* 
    c Geometry Locations (XYZ)
    c ************************************************************************************************************* 
     
     
    c Scale Parameters
    symb xmin = -0.5 * $coordFactor
    symb xmax = 0.5 * $coordFactor
    symb ymin = -1.11022e-16 * $coordFactor
    symb ymax = 1.0 * $coordFactor
    symb zmin = -0.5 * $coordFactor
    symb zmax = 0.5 * $coordFactor
     
    c Determine lengths of the model
    symb xlen = ( $xmax - $xmin )
    symb ylen = ( $ymax - $ymin )
    symb zlen = ( $zmax - $zmin )
     
    c *************************************************** 
    c Keypoints in the X-Direction
    c *************************************************** 
     
    symb #keycord x 1 $xmin $xlen 
    symb #get { idx } rootmax x 
     
    c *************************************************** 
    c Keypoints in the Y-Direction
    c *************************************************** 
     
    symb #keycord y 1 $ymin $ylen 
    symb #get { jdx } rootmax y 
     
    c *************************************************** 
    c Keypoints in the Z-Direction
    c *************************************************** 
     
    symb #keycord z 1 $zmin $zlen 
    symb #get { kdx } rootmax z 
     
    c ************************************************************************************************************* 
    c Indices Locations (IJK)
    c ************************************************************************************************************* 
     
    c Grid in I direction, using approximately element size of 'box' and at least 1 element
    symb #keyindx i 1 $idx 1 $box 1 
    symb indgrd = $i$idx
     
    c Grid in J direction, using approximately element size of 'box' and at least 1 element
    symb #keyindx j 1 $jdx 1 $box 1 
    symb jndgrd = $j$jdx
     
    c Grid in K direction, using approximately element size of 'box' and at least 1 element
    symb #keyindx k 1 $kdx 1 $box 1 
    symb kndgrd = $k$kdx
     
     
    c ************************************************************************************************************* 
    c GCON Grid & Geometry Allocation
    c ************************************************************************************************************* 
     
    grid $i$idx $j$jdx $k$kdx 
    geom
    keypnt $idx $jdx $kdx 
    end
     
    c -------------------------------------------------------------- 
    c                   Project Material List
    c -------------------------------------------------------------- 
     
     
    c -------------------------------------------------------------------------
    c Global variables used in all the material definitions
    c -------------------------------------------------------------------------
    c
    symb epvacm = 8.854e-12               /* dielectric constant for vacumn
    symb freqdamp = 1.e6 if noexist       /* specified frequency for damping model
    symb rmu0 = 1.2566e-6
     
    symb #msg 5
    ********************************************************
    Damping matched at $freqdamp Hz
    Redefine variable 'freqdamp' if device centre frequency
    varies significantly from this value
    ********************************************************
     
     
    c
    c -------------------------------------------------------------------------
    c    Now define the axis transformation - only posx used in this file
    c -------------------------------------------------------------------------
     
    axis
         form vctr
         defn posx car2 0. 0. 0.    1.  0.  0.   0. 1. 0.
         defn negx car2 0. 0. 0.   -1.  0.  0.   0. 1. 0.
         defn posy car2 0. 0. 0.    0.  1.  0.   0. 0. 1.
         defn negy car2 0. 0. 0.    0. -1.  0.   0. 0. 1.
         defn posz car2 0. 0. 0.    0.  0.  1.   1. 0. 0.
         defn negz car2 0. 0. 0.    0.  0. -1.   1. 0. 0.
    form angl
    defn cylnaxis cyln 0. 0. 0. 90. 0. 0.
    defn sphraxis sphr 0. 0. 0. 90. 0. 0.
         end
     
    c -------------------------------------------------------------------------
    c    Input material properties to program
    c -------------------------------------------------------------------------
     
    matr
    c -------------------------------------------------------------- 
    c type : PIEZO : 
    c name : aln : 
    c desc : Aluminium Nitride - Thin film properties [1] from Sonitov Elastic and Piezoelectric Properties of AlN and LiAlO2 Single Crystals UFFC 2010 : 
    c -------------------------------------------------------------- 
     
     
    c    define baseline dielectric coefficients
     
    symb epxx = 8.00000                   /* dielectric constant (constant strain)
    symb epyy = 8.00000                   /* dielectric constant (constant strain)
    symb epzz = 9.50000                   /* dielectric constant (constant strain)
    symb rho  = 3260.00                    /* density
    symb qdmp = 10000.0                      /* Mechanical Q at 1e6
    symb qsdmp = 10000.0                      /* Mechanical Q at 1e6
    symb freqdamp = 1.e6 if noexist
    symb freqloss = 2.00000e+09 if noexist                     /* Frequency that loss was measured at
     
    c    define baseline stiffness coefficients
     
    symb c11 = 3.45000e+11                  /* stiffness constant (constant electric field)
    symb c12 = 1.25000e+11                  /* stiffness constant
    symb c13 = 1.20000e+11                  /* stiffness constant
    symb c14 = 0.00000                  /* stiffness constant
    symb c15 = 0.00000                  /* stiffness constant
    symb c16 = 0.00000                  /* stiffness constant
    symb c22 = 3.45000e+11                  /* stiffness constant (constant electric field)
    symb c23 = 1.20000e+11                  /* stiffness constant
    symb c24 = 0.00000                  /* stiffness constant
    symb c25 = 0.00000                  /* stiffness constant
    symb c26 = 0.00000                  /* stiffness constant
    symb c33 = 3.95000e+11                  /* stiffness constant
    symb c34 = 0.00000                  /* stiffness constant
    symb c35 = 0.00000                  /* stiffness constant
    symb c36 = 0.00000                  /* stiffness constant
    symb c44 = 1.18000e+11                  /* stiffness constant
    symb c45 = 0.00000                  /* stiffness constant
    symb c46 = 0.00000                  /* stiffness constant
    symb c55 = 1.18000e+11                  /* stiffness constant
    symb c56 = 0.00000                  /* stiffness constant
    symb c66 = 1.10000e+11
     
    c    define baseline piezoelectric coupling coefficients
     
    symb ex1 = 0.00000                   /* coupling constant
    symb ex2 = 0.00000                   /* coupling constant
    symb ex3 = 0.00000                   /* coupling constant
    symb ex4 = 0.00000                   /* coupling constant
    symb ex5 = -0.480000                   /* coupling constant
    symb ex6 = 0.00000                   /* coupling constant
    symb ey1 = 0.00000                   /* coupling constant
    symb ey2 = 0.00000                   /* coupling constant
    symb ey3 = 0.00000                   /* coupling constant
    symb ey4 = -0.480000                   /* coupling constant
    symb ey5 = 0.00000                   /* coupling constant
    symb ey6 = 0.00000                   /* coupling constant
    symb ez1 = -0.580000                   /* coupling constant
    symb ez2 = -0.580000                   /* coupling constant
    symb ez3 = 1.55000                   /* coupling constant
    symb ez4 = 0.00000                   /* coupling constant
    symb ez5 = 0.00000                   /* coupling constant
    symb ez6 = 0.00000                   /* coupling constant
     
    c    scale material properties as specified above
     
    symb aepxx = $epvacm * $epxx
    symb aepyy = $epvacm * $epyy
    symb aepzz = $epvacm * $epzz
     
         wvsp off 
         type lean
     
         prop aln $rho
         $c11     $c12     $c13     $c14    $c15    $c16    $c22
         $c23     $c24     $c25     $c26    $c33    $c34    $c35
         $c36     $c44     $c45     $c46    $c55    $c56    $c66
     
         elec aln $aepxx $aepyy $aepzz
     
         piez aln 1 1 $ex1 1 2 $ex2 1 3 $ex3 1 4 $ex4 1 5 $ex5 1 6 $ex6 &
           2 1 $ey1 2 2 $ey2 2 3 $ey3 2 4 $ey4 2 5 $ey5 2 6 $ey6 &
           3 1 $ez1 3 2 $ez2 3 3 $ez3 3 4 $ez4 3 5 $ez5 3 6 $ez6
     
         rdmp aln $freqdamp q $qdmp $qsdmp $freqloss 1.0
     
    c     axis aln cylnaxis plusr 0. 360. 12.   /* relate materials local system to global system
        axis aln sphraxis plusr 0. 360. 36. 0. 360. 36. 
       elec void $epvacm
       end
     
    c ************************************************************************************************************* 
    c Primitive Definitions
    c ************************************************************************************************************* 
     
    site
    regn void 
    sphr aln 0.0 0.0 0.0 0.5 0.25 
     
    end
     
    grph
    plot matr
    end
     
    term
     
    c ************************************************************************************************************* 
    c Boundary Definitions
    c ************************************************************************************************************* 
     
    boun
    side xmin free 
    side xmax free 
    side ymin free 
    side ymax free 
    side zmin free 
    side zmax free 
    end
     
    piez 
    wndo * * * * * *
    defn actv 0.5
    nod2 root aln void
    bc actv grnd
    slvr pard
    end
     
    time * * 0.8 
     
    c ************************************************************************************************************* 
    c Process Model 
    c ************************************************************************************************************* 
    c Issue process (PRCS) command. Checks model integrity, and calculates stable 
    c time step. NOTE: Process command must always be issued
     
    c ************************************************************************************************************* 
     
    symb #msg 1
    Checking Model Integrity......
    prcs
     
    grph
    type stnd
    arrow pole 5 5
    plot matr
    end
     
    term
     
    c ************************************************************************************************************* 
    c Run the Model 
    c ************************************************************************************************************* 
    c Specify the number of time steps to be run. Can be set to auto by using 
    c 'Ringdown'.
     
    c ************************************************************************************************************* 
     
    c User defined runtime for the model
    symb #get { step } timestep 
    symb ttime = 0.001
    symb nexec = $ttime / $step
    exec $nexec 
     
    symb n_extra = nint ( $step / 10 )
    exec $n_extra 
    term
     
    data
    file out 'Example.flxdato' 
    out modl 
    end
     
     
    c ************************************************************************************************************* 
    c Save symbol variables to file for later use
    c ************************************************************************************************************* 
     
    symb #get { labl } jobname 
    symb #save '$labl.symb' 
    stop  /* return to command prompt

     

    Comment actions Permalink
  • Hello.. I tried in this way. The radial polarisation on sphere is done . But the problem is when I add water domain( cube) around the sphere, put absorbing boundary conditions and chosen extrapolation output, It didn’t run, I could apply radial polarisation, only when simulating pzt hollow sphere alone.

    Comment actions Permalink

Please sign in to leave a comment.

Didn't find what you were looking for?

New post