MATLAB: Solving eigenvalues PDE problem

eigenvaluespdesolvepdeeig

I'm working on solving an eigenvalue problem on a domain . I'm intersted on the eigenvalues on the left hand side of the domain. Hence, I used the pdetool to export the geometry and then generate the mesh (p,e,t) and map it to a certain map. Then I used the syntax 'solvepdeeig' to solve the problem, but Matlab can't accept my input i.e. solvepdeeig(b,e,p,t,1,q,1,r) says there is an erro. I think it only accepts solvepdeeig(model,evr), is there any way to turn this to a model or is there any other syntax to work on with the eigenvalues problems? Especially because I'm looking to extract the finite elements matrices after solving the PDE?
[SL: fixed formatting]

Best Answer

Hi Haya,
You need to setup the problem using new workflow:
model = createdpde;
Then assign the geometry to the model using decsg and geometryFromEdges functions, first export the geomery using the option in Draw menu of pdetool and then execute the following commands:
g = decsg(gd,sf,ns)
geometryFromEdge(model,g);
The fillin the rest of the details of the model using specifyCoefficient and applyBoundaryConditions function, check for the documentation on the syntax.
Once you are done defining the model, you can generate the mesh and solve for eigenvalue as:
generateMesh(model)
Reign = solvepdeeig(model,[-100, upperFreqLimit])
Regards,
Ravi