error using solve function
    조회 수: 4 (최근 30일)
  
       이전 댓글 표시
    
hi,
I use the function solve to determine a variable as follows:
x = solve (cos (x) * sin (y) * cos (z) + sin (Z) = 1 ',' x ')
then I evaluated x in terms of y and z, when I replace x by the value finding the equation is not = 1!!
how can i resolve it?
댓글 수: 0
답변 (1개)
  Walter Roberson
      
      
 2015년 5월 13일
        Are x and y and z symbolic at the time you call solve? Or are y and z numeric?
If they are symbolic and you later substitute in numeric y and z to the solve() response get a numeric x, and then substitute the numeric x, y, and z into the cos (x) * sin (y) * cos (z) + sin (Z) formula, then you could get something other than 1 due to round-off error.
Also, if your y and z are square matrices of numeric values, then cos (x) * sin (y) * cos (z) would succeed but what not be what you want: you would need to evaluate
cos(x) .* sin(y) .* cos(z)
Notice the ".*" instead of "*" if you are working with vectors or matrices.
댓글 수: 4
  Torsten
      
      
 2015년 5월 22일
				I'd be interested what you get for x after applying "solve".
Best wishes
Torsten.
참고 항목
카테고리
				Help Center 및 File Exchange에서 Linear Algebra에 대해 자세히 알아보기
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


