--############################################### Setup mesh
nodes={}
N=40
L=2
xmin = -L/2
dx = L/N
for i=1,(N+1) do
k=i-1
nodes[i] = xmin + k*dx
end
--###############################################
Set Material IDs
({ xmin=-0.5,xmax=0.5,ymin=-0.5,ymax=0.5, infz=true })
D = {1.0,0.01}
Q = {1.0,10.0}
XSa = {1.0,10.0}
function D_coef(i,x,y,z)
return D[i+1]
end
function Q_ext(i,x,y,z)
return Q[i+1]
end
function Sigma_a(i,x,y,z)
return XSa[i+1]
end
-- Setboundary IDs
-- xmin,xmax,ymin,ymax,zmin,zmax
e_bndry = 0
w_bndry = 1
n_bndry = 2
s_bndry = 3
--############################################### Add material properties
--#### CFEM solver
--############################################### Get field functions
--############################################### Export VTU
if (master_export == nil) then
end
--############################################### Volume integrations
--############################################### PostProcessors
({
name = "avgval",
field_function = math.floor(fflist[1]),
compute_volume_average = true
})
chi.ExecutePostProcessors({
"avgval"})
Handle chiCFEMDiffusionSolverCreate()
void chiCFEMDiffusionSetBCProperty(int SolverHandle, string PropertyName, varying Values)
void chiVolumeMesherSetProperty(int PropertyIndex, varying PropertyValue)
void chiSolverSetBasicOption(int solver_handle, string option_name, varying option_value)
void chiSolverExecute(int solver_handle)
void chiSolverInitialize(int solver_handle)
void chiSolverGetFieldFunctionList(int SolverHandle)
void chiExportFieldFunctionToVTK(int FFHandle, char BaseName)
void Set(VecDbl &x, const double &val)