Open-source MOOSE application "Ferret" for parallel mesoscale simulations of ferroic and related electronic materials
See the website at https://mangerij.github.io/ferret/ for more information.
Open-source MOOSE application "Ferret" for parallel mesoscale simulations of ferroic and related electronic materials
Open-source MOOSE application "Ferret" for parallel mesoscale simulations of ferroic and related electronic materials
See the website at https://mangerij.github.io/ferret/ for more information.
the kernels are included - as per our overleaf notes but no working example or test exists.
We recently moved from BitBucket.
The webhook for CIVET needs to be made active.
All changes to the code will go to the devel
branch and then the tests will run on CIVET and then pushed to master
.
Need to have AuxKernels to compute bulk and gradient energy densities to differentiate inhomogenieties in the polar field as to those from concenrtation variation or domain wall formation.
also need self-consistent energy postprocessors to use the terminator.
Loops need to be reworked to allow for 3D fourier expansion. May just have a different function (S3D for example).
Add term from Zhang and Li that takes into account non-equilibrium conduction electrons adding to a "bulk" spin torque effect (see Physical Review Letters, 93(12):127204, September 2004)
Procedure as follows:
Generate domain structure Pk(r) under some boundary conditions and concentration field. ✓
Set Pk(r) to be an AuxVariable
Expand free energy Pk -> Pk + 𝛿Pk such that 𝛿Pk << Pk (drop higher orders of 𝛿Pk) for k = x, y, z and use relaxation equation to evolve 𝛿Pk (Variable) in the presence of Pk (AuxVariable) and a small AC probing field and calculate the linear dielectric response.
Long Term Goal: This will largely eliminate long return statements (re high order coupling terms).
In theory, this should optimize the code speed but we've seen that a lot of "new" MOOSE features actually slow the code down.
displacements=’disp_x disp_y disp_z’ in GlobalParams activates the displaced mesh in the Mesh block by default. This is problematic because it creates needless overhead while we are working with small strains (the linear elastic limit).
Tests should reflect this so users don't get confused and all calculations can run a little faster. May require re-golding.
Clean up branch a bit. Avoid confusion.
Assuming two ferromagnetic sublattices that are coupled antiferromagnetically and both obey their own LLB equations, a simple effective field can be entered into the residual statements linear in the opposing magnetization field (see arxiv.org/pdf/1808.03773.pdf for an example).
Need to include concentration field-dependent electrostrictive coupling.
Note a simple boolean can switch between P and P + δP approach.
No need for extra "SD" kernels. Use flags is_relaxing
, is_perturbed
or something equally cunning.
These kernels are included but we have no working-examples
Need to make tests faster - and perhaps cover a few more pieces of the code in the mean time.
Will regold critical tests
Similar to the approach done for the polar-coupling: the magnetostrictive tensor should be block-restricted. Need to rework all GlobalParams into GenericMaterial which can be block-restricted (see #34 )
USLL, CartLLG (should be renamed CartLL), and CartLLB seem to work. Note that we can add LLBLongitudinal to CartLL to ensure magnetization is constrained. Related to #12
While working on #34 , I noticed that some of the postprocessors still use std::pow(arg,n) instead of Utility::pow(arg) which is much faster.
Depends on #12 being finished and properly benchmarked.
The FourierNoise + spatially dependent coefficient problem needs a test.
depends on #22
wait on CIVET integration of ScalFMM
Need test - can override other tests now and speed up testing (see #50 )
IntegratedBC class (need access to sideset normals at the interface).
As of May 5, 2020
Delete any LLG kernel not used/working (with the exception of the USLLG implementation)
New function that derives from Fourier class that uses a nominal and uncertainty range. Can be used for thermal or concentration variations (i.e. relaxors).
See input files from Omar for example
Go back to the "old" way, where symmetry is included before the Kernel is constructed - allows for rotations of crystallographic axes and Kernel contributions that are not restricted by symmetry. See FerroelectricCouplingP.C
for example.
Current implementations only have cubic
crystal classes. The "old" approach was abandoned for a number of reasons in order to test cubic form (for example canonical pervoskites like lead titanate).
The d\vec{m}/d\hat{n} = 0 should be enforced by the boundary condition system - but perhaps it needs to be checked.
Need to include information about being on github, not bitbucket
See Mumag ref paper - Vansteenkiste, A. and Van de Wiele, B., 2011. MuMax: A new high-performance micromagnetic simulation tool. Journal of Magnetism and Magnetic Materials, 323(21), pp.2585-2591
Let alpha_long depend on space and decrease to 0.0 as |m(r)|->1.0
Need to remove a number of legacy attempts at LLG to clean up repository.
Need tests.
Full toolchain scripts for some representative calculations from the Acta papers can exist in the scripts folder.
See Koyama et al 2004 (Fe-Cr-Co Alloy Under an External Magnetic Field)
MOOSE broke Ferret with changes to IC system and block restriction. Will regold tests
Some of the postprocessors should have corresponding aux density fields. Then we can get rid of having a specific postprocessor for every piece of physics.
Will simplify and compactify the code...
May need to investigate InterfaceKernels for this stuff...
This is just to test CI... But it can be merged if folks are comfortable disabling a test instead of fixing it :)
The LLB implementation needs one "global" term for the saturation magnetization and other terms for each component of the effective field.
Currently, the saturation magnetization can only be identically 1.0 [in Ferret units: equal to 10.0*10^5 "Coulombs"/"Seconds" "Meters"]
Need to ensure factors of Ms are properly set throughout the LLB implementation
The K constant should be a material property to exploit block-restriction.
just some minor changes here
In Koyama (2004), the demagnetization field is calculated by using dipole kernel presumably to reduce computational load. We can, instead, explicitly calculate the magnetostatic potential due to the Poisson equation and then use that stray (demagnetizing) field as input to the Cahn-Hilliard problem. So instead of using Eq (6) in Koyama, we can use the form proposed in the 11/2 meeting. Basically it's M dot (grad potential) * function of concentrations after taking the variation in the CH equation.
Need py / .nb scripts for representative problems of RIT information.
old kernel from old attempt at coupling in free charges to FE models - did not work and should not be in the code
Create Kernels where materials coefficients can be AuxVariables spatially distributed across the mesh.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.