PGR21.com
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다.
통합 규정을 준수해 주십시오. (2015.12.25.)
Date 2018/08/14 21:53:28
Name 물키벨
File #1 질문1.jpg (24.1 KB), Download : 34
Subject [질문] [매트랩]매트랩 초보의 간단한 코딩 질문입니다 (수정됨)


예를 들면 y=x^2 의 그래프를 그렸다고 가정 했을때,

1. 특정 x값(여기서는 x=1.84)에 대한 y값을 구하려면 어떻게 코딩해야 하나요?

2.
x값이 행렬로 주어졌을때 (여기서는 x = [0 , 1.2, 1.84, ....])
이때의 y결과값도 같은 크기의 행렬로 나오게 하는 것은 어떤식으로 코딩할수 있나요?

답변 부탁드려요~ 힌트라도 주시면 정말 감사하겠습니다.
-----------------------------------------------------------질문수정------------------------

데이터가 하나 있는데요,
값은 real.x0 (1x1099 double),real.y0 (1x1099 double) 에  저장된 상태입니다.
여기서 이 데이터들을 피팅한후에 그 피팅커브를 이용해서 측정하지 않은 x포인트 다수에 대한 y값들을 얻고 싶은데요.

x=real.x0;
y=real.y0;
xi=5:-0.001:0.2;  %일단 최대한 촘촘하게 피팅하기 위해 0.001로 나눔%
yispl=interp1(x,y,xi,'spline'); %스플라인 방법으로 피팅%
plot(x,y,'o',xi,yispl,'r')

이렇게 하여서 첨부한 그림파일처럼 파란건 실측값, 빨간선은 이것을 x간격이 0.001인 피팅한 커브입니다.
이때 제가 하고싶은건 x가 임의로 정해진 큰 벡터일때 (ex:  1, 2.345, 2,459, 3... )이 x들에 대한 yispl값(피팅커브)을 구하고 싶은 상태입니다


통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
18/08/14 22:32
수정 아이콘
1. 정확히 어떤 질문인지 모르겠는데, 1.84^2를 직접 계산하는 방법밖에는 모르겠네요. 코딩에서는 무한히 많은 x값에 대해서 전부 계산할 수는 없으니까요.. 아니면 눈금을 0.1 단위로 그려서 x = 1.80, 1.90에서의 값을 구한 뒤 interpolation 해야겠네요. 이러면 정확한 값은 아니겠죠.

2. y=zeros(length(x), 1) 이런 식으로 x와 같은 크기의 벡터를 만든 뒤에 y(1)부터 계산하면 될 것 같아요.
물키벨
18/08/14 22:59
수정 아이콘
질문이 부정확한거 같아서 수정했어요..
18/08/15 00:37
수정 아이콘
x와 y의 관계가 explicit하게 정의된 상황이면 자명하게 해당값을 구할수 있는 상황 아닌가요?
물키벨
18/08/15 00:57
수정 아이콘
제가 매트랩 쓴지 며칠 안되는데 말씀하신거처럼 분명 쉽게 구할수 있을텐데 삽질하고 있는거 같아요. 계속 오류가 나서요.
Bluelight
18/08/15 00:39
수정 아이콘
(수정됨) 스플라인 메소드를 잘못 이해하신 것 같은데요.

"촘촘하게 피팅하기 위해" 라는 부분이 틀렸습니다. xi 를 엄청 엉성하게 잡든, 촘촘하게 잡든 피팅결과는 변하지 않습니다. spline함수는 x, y를 이용해서 피팅을 할 뿐이고, 그 결과는 xi가 아닌 x, y에만 의존합니다. x, y를 이용해서 피팅함수를 구한 수, 그 피팅함수에 xi 를 넣었을 때 나올 값들을 가지고 yispl 을 구성할 뿐입니다. xi를 촘촘하게 하면, 화면에 보이는 선이 촘촘해지는거지 피팅이 더 정확해지진 않습니다.

원하는 임의의 벡터를 x_rand 라고 하면, 그냥 yispl = interp1(x,y,x_rand,'spline') 하시면 됩니다.
Bluelight
18/08/15 00:44
수정 아이콘
(수정됨) 지금 정의하신 xi 와 그에 대한 yispl 이 있다고 했을 때, 이 xi의 요소 중에 x0=2.345 라는 값이 존재하고, 그 인덱스를 이용해 해당하는 yispl 값을 찾고싶다면 find 함수를 활용하는 방법이 있습니다.

index = find(xi = 2.345);
y_at_x0 = yispl(index);
물키벨
18/08/15 00:55
수정 아이콘
피드백 정말 감사합니다. 지금 매트랩을 못돌려서 내일 출근하면 해보겠습니다~
물키벨
18/08/15 00:58
수정 아이콘
번외로 혹시 매트랩 어떻게 공부하셨는지 여쭤봐도 될까요?
Bluelight
18/08/15 01:15
수정 아이콘
하다가 안되면 구글에 키워드로 검색해서 관련 함수 찾고, 함수명 찾으면 매트랩에서 도움말(F1) 연 다음에 해당 함수 검색해서 써져있는 설명들 읽고 써보면서 익혔습니다. 요즘엔 한글로도 도움말 잘 나오더라구요.
물키벨
18/08/15 01:17
수정 아이콘
감사합니다
Bluelight
18/08/15 11:41
수정 아이콘
index = find(xi = 2.345)

이 부분

index = find(xi == 2.345)

이렇게 해야 하겠네요 생각해보니
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
123626 [질문] 컴퓨터 다운 관련 질문드립니다. [8] 365일1660 18/08/16 1660
123625 [질문] 지마켓에서 파는 아디다스 의류도 짭인가요? [7] 무민3030 18/08/16 3030
123623 [질문] 워3 유즈맵 하는 채널이 있을까요? [2] 나를찾아서2813 18/08/16 2813
123622 [질문] 서울대입구, 신림 주변 미용실 추천좀 부탁드립니다 [2] 삭제됨2169 18/08/16 2169
123621 [질문] 헬스(근력운동)와 라운드숄더 상관관계 질문입니다. [7] 제로콜라3362 18/08/16 3362
123620 [질문] 설악산 2박 2.1일 코스 - 숙박 장소에 대해서 질문드립니다! [3] Poorpride1595 18/08/16 1595
123619 [질문] 유럽 저가항공 수하물 관련하여 빡빡한가요? [7] 오렌지망고4373 18/08/16 4373
123618 [질문] 구글 크롬 문제 질문 입니다. 칼하르트1254 18/08/16 1254
123617 [질문] 운전중 터널만 들어가면 잠이 옵니다 [9] Dunn2386 18/08/16 2386
123616 [질문] 미성년자/자녀에게 언제부터 음란물을 허용해야 할까요? [23] Aku3630 18/08/16 3630
123615 [질문] 올해 아시안게임은 일찍하는 이유가 뭔가요? [6] Fim2289 18/08/16 2289
123614 [질문] 이러한 성소수자를 지칭하는 용어가 있나요? [7] 짱짱걸제시카3357 18/08/16 3357
123613 [질문] 직장동료가 길거리 도촬을 하는 걸 알게됐다면? [13] 삭제됨3895 18/08/16 3895
123612 [질문] 카톡 관련 질문.. [2] neo ov1396 18/08/16 1396
123611 [질문] 이중에 괜찮은 축구 감독 순위가 어떻게 되나요?? [3] 대빵큰오리1734 18/08/16 1734
123610 [질문] 해외 호텔 결제 문의드립니다. [5] 홀리데이1506 18/08/16 1506
123608 [질문] 컴퓨터 견적 이륙허가 요청합니다 [6] 삭제됨2588 18/08/16 2588
123607 [질문] 아재입니다 pgr에 이미지 여러장 삽입방법좀 알려주세요 [3] 알콜부이2635 18/08/16 2635
123606 [질문] 최근 스연게에 대해 질문 있습니다. [21] 축구2020 18/08/16 2020
123605 [질문] 요즘 어깨 쪽이 너무 뻐근한데 좋은 운동 있을까요? [11] 봄날엔1984 18/08/16 1984
123604 [질문] 연봉 질문 드립니다. [16] 그림속동화3731 18/08/16 3731
123602 [질문] 결혼을 앞두고 300일 기념 커플링 어떤가요? [16] 히든고수3951 18/08/16 3951
123601 [질문] 고속도로 ic가 어지러운건 저만 그런걸까요 [9] 분당선2421 18/08/16 2421
목록 이전 다음
댓글

+ : 최근 1시간내에 달린 댓글
+ : 최근 2시간내에 달린 댓글
맨 위로