MATLAB怎麼將符號變數轉換成字元

2021-05-20 22:25:29 字數 6293 閱讀 6196

1樓:滿洛裴瑜

比如某個符號變數為sym格式,這你可以從matlab主桌面的workspace那兒檢視該變數的名稱及型別。比如該符號變數叫aa。

bb=char(aa)

%這樣就使該符號變數的值變成字串形式了,並賦值給bb然後你就可以把這個字串再轉化為其它形式,如轉化為數值形式,str2num(bb)。這樣就得到了一個數值

2樓:佴代桃琦鶴

符號變數一般是用到公式計算當中去的,而字元則是變數(char),與double,cell,struct等等,地位等同,字串則是多個字元組成,字元和字串在matlab裡面區分也不那麼嚴格,使用起來也很隨意的。

matlab 符號函式轉換為數值函式? 10

3樓:匿名使用者

1. 最簡便的辦法:利用 matlabfunction(這個函式只適用於2009a及更新的版本)

syms x

y=exp(x)*x^2+x+1

g = matlabfunction(y)

2. eval + vectorize 函式:vectorize 的目的是將字串(string)表示式裡的 * / ^ 替換為 .

* ./ .^ ,以支援向量運算。

eval 執行該字串後得到函式控制代碼

syms x

y=exp(x)*x^2+x+1

g = eval(['@(x)',vectorize(y)])

3. str2func + vectorize 函式:str2func 函式可以直接將字串轉化為函式控制代碼

syms x

y=exp(x)*x^2+x+1

g = str2func(['@(x)',vectorize(y)])

4. str2num + vectorize

syms x

y=exp(x)*x^2+x+1

g = str2num(['@(x)',vectorize(y)])

4樓:科技數碼答疑

直接重新複製結果,貼上就計算出來了

5樓:

一開始是符號後面就沒法變了。

可以開始時將要算的變數用以個矩陣表示 如0:0.01:20來表示 再解 就是數值解了

6樓:匿名使用者

看情況,如果是數值的表示式,用double就可以了

如果裡面含有字母,就用subs函式來替換

matlab怎麼將符號變數轉換成字元

7樓:死就死住宿

比如某個符號變數為sym格式,這你可以從matlab主桌面的workspace那兒檢視該變數的名稱及型別。比如該符號變數叫aa。

bb=char(aa) %這樣就使該符號變數的值變成字串形式了,並賦值給bb

然後你就可以把這個字串再轉化為其它形式,如轉化為數值形式,str2num(bb)。這樣就得到了一個數值

8樓:匿名使用者

你指的是sym型別的吧

clear,clc;

syms x

fx=x^2+x+5

f=char(fx)

數值的話可以用num2str

matlab中如何把符號變數轉化為數值變數?

9樓:匿名使用者

有點奇怪,你通過sym2poly得到了數值型的係數矩陣coeff,然後又怎麼會得到sym型別的零點呢?

如果zeropoint是數值型別,可以改為

disp(['在',mat2str(zeropoint),'處取得極值']);

如果zeropoint是符號型別,可以改為

disp(['在',mat2str(double(zeropoint)),'處取得極值']);

或者disp(['在',char(zeropoint),'處取得極值']);

10樓:加菲

如果zeropoint是數值型別,可以改為1disp(['在',mat2str(zeropoint),'處取得極值']);

如果zeropoint是符號型別,可以改為1 disp(['在',mat2str(double(zeropoint)),'處取得極值']);

或者1 disp(['在',char(zeropoint),'處取得極值']);

11樓:陡變吧

subs(f(x),10)

subs:替換函式,上面是指把x=10賦給f(x)

求採納為滿意回答。

matlab 中 如何實現將字串變數的值作為新的變數名 並對該新的變數名賦值

12樓:桓以蕊翁蕭

上面的回答很正確了,無非就兩個辦法:

1)就是把目錄底下所有的mat檔案都提取出來file_name

=dir('*.mat');

除開file_name(1).name和file_name(2).name是.和..外,其他都是mat檔名。

2)就是連續load,每次改變file_namefori

=1:13

name

=['data1_al_',num2str(i),'__u'];

load

name;

%your

code;

end還有一個很笨的辦法,就是load了以後,用eval(s)來執行一次,順便賦值。。(s是命令列)

13樓:匿名使用者

str= ;

for i=1:length(str)

eval([cell2mat(str(i)) '=' num2str(i)]);end

14樓:匿名使用者

好象直接使用就可以了,第一次出現就包含了定義順便把些命令弄給你看下

matlab命令

matlab ***mands and functions lista a

abs 絕對值、模、字元的ascii碼值

acos 反餘弦

acosh 反雙曲餘弦

acot 反餘切

acoth 反雙曲餘切

acsc 反餘割

acsch 反雙曲餘割

align 啟**形物件幾何位置排列工具

all 所有元素非零為真

angle 相角

ans 表示式計算結果的預設變數名

any 所有元素非全零為真

area 面域圖

argnames 函式m檔案宗量名

asec 反正割

asech 反雙曲正割

asin 反正弦

asinh 反雙曲正弦

assignin 向變數賦值

atan 反正切

atan2 四象限反正切

atanh 反雙曲正切

autumn 紅黃調秋色圖陣

axes 建立軸物件的低層指令

axis 控制軸刻度和風格的高層指令

b bbar 二維直方圖

bar3 三維直方圖

bar3h 三維水平直方圖

barh 二維水平直方圖

base2dec x進位制轉換為十進位制

bin2dec 二進位制轉換為十進位制

blanks 建立空格串

bone 藍色調黑白色圖陣

box 框狀座標軸

break while 或for 環中斷指令brighten 亮度控制

c ccapture (3版以前)捕獲當前圖形

cart2pol 直角座標變為極或柱座標

cart2sph 直角座標變為球座標

cat 串接成高維陣列

caxis 色標尺刻度

cd 指定當前目錄

cdedit 啟動使用者選單、控制元件**函式設計工具cdf2rdf 複數特徵值對角陣轉為實數塊對角陣ceil 向正無窮取整

cell 建立元胞陣列

cell2struct 元胞陣列轉換為構架陣列celldisp 顯示元胞陣列內容

cellplot 元胞陣列內部結構圖示

char 把數值、符號、內聯類轉換為字元物件chi2cdf 分佈累計概率函式

chi2inv 分佈逆累計概率函式

chi2pdf 分佈概率密度函式

chi2rnd 分佈隨機數發生器

chol cholesky分解

clabel 等位線標識

cla 清除當前軸

class 獲知物件類別或建立物件

clc 清除指令窗

clear 清除記憶體變數和函式

clf 清除圖物件

clock 時鐘

colorcube 三濃淡多彩交叉色圖矩陣colordef 設定色彩預設值

colormap 色圖

colspace 列空間的基

close 關閉指定視窗

colperm 列排序置換向量

***et 彗星狀軌跡圖

***et3 三維彗星軌跡圖

***pass 射線圖

***pose 求複合函式

cond (逆)條件數

condeig 計算特徵值、特徵向量同時給出條件數condest 範 -1條件數估計

conj 複數共軛

contour 等位線

contourf 填色等位線

contour3 三維等位線

contourslice 四維切片等位線圖conv 多項式乘、卷積

cool 青紫調冷色圖

copper 古銅調色圖

cos 餘弦

cosh 雙曲餘弦

cot 餘切

coth 雙曲餘切

cplxpair 複數共軛成對排列

csc 餘割

csch 雙曲餘割

cumsum 元素累計和

cumtrapz 累計梯形積分

cylinder 建立圓柱

d ddblquad 二重數值積分

deal 分配宗量

deblank 刪去串尾部的空格符

dec2base 十進位制轉換為x進位制

dec2bin 十進位制轉換為二進位制

dec2hex 十進位制轉換為十六進位制

deconv 多項式除、解卷

delaunay delaunay 三角剖分del2 離散laplacian差分

demo matlab演示

det 行列式

diag 矩陣對角元素提取、建立對角陣

diary matlab指令窗文字內容記錄diff 數值差分、符號微分

digits 符號計算中設定符號數值的精度dir 目錄列表

disp 顯示陣列

display 顯示物件內容的過載函式

dlinmod 離散系統的線性化模型

dmperm 矩陣dulmage-mendelsohn 分解dos 執行dos 指令並返回結果

double 把其他型別物件轉換為雙精度數值drawnow 更新事件佇列強迫matlab重新整理螢幕dsolve 符號

怎樣將符號型矩陣轉換成數值型 matlab

15樓:day忘不掉的痛

符號常量矩陣a,可以使用double來轉換為數值矩陣。

>> a = sym([1/2 1/3;1/4 1/5])a =

[ 1/2, 1/3]

[ 1/4, 1/5]

>> a1=double(a)

a1 =

0.5000 0.3333

0.2500 0.2000

若是符號變數矩陣,比如含有變版量x,需要使用變數替權換subs,才能得到數值矩陣

>> syms x

>> a = [2*x 1/3; x^2 3+x]a =[ 2*x, 1/3]

[ x^2, 3+x]

>> a1 = subs(a,'x',1/4)a1 =

0.5000 0.3333

0.0625 3.2500

16樓:匿名使用者

符號型矩陣轉數值型矩陣可以使用double命令如:>> a=[1/3 sqrt(2); 2/3 sqrt(5)]a =0.3333 1.4142

0.6667 2.2361

>> b=sym(a) % a是數值型矩陣,內先將其轉化成符容號型矩陣

b =[ 1/3, sqrt(2)][ 2/3, sqrt(5)]

>> c=double(b)

c =0.3333 1.4142

0.6667 2.2361

圖中的題目,用matlab畫圖怎麼將符號運算怎麼轉化為數值運算給變數賦值並畫出曲線圖形

將符號運算怎麼轉化為數值運算,可以用eval 函式。syms t x y int sin t t,0,x x 0 pi 100 2 pi plot x,eval y 執行結果 圖中的題目,用matlab畫圖怎麼將符號運算怎麼轉化為數值運算給變數賦值並畫出曲線圖形?看你打算用符號函式畫圖是數值計算的方...

matlab如何將整個矩陣賦給其他變數

b rand 8,9 a rand 8,9 a b這樣可以嗎 如果行列不同 要求a元素數目 b元素數目 可以用reshape函式 a 1 16,n reshape b,16,1 把b矩陣變成一個列向量賦值給a矩陣作為第n列 a rand 10,9 b rand 4,4 a 1 4,1 4 b 不知道...

怎樣將符號型矩陣轉換成數值型怎樣將符號型矩陣轉換成數值型matlab

符號常量矩陣a,可以使用double來轉換為數值矩陣。a sym 1 2 1 3 1 4 1 5 a 1 2,1 3 1 4,1 5 a1 double a a1 0.5000 0.3333 0.2500 0.2000 若是符號變數矩陣,比如含有變版量x,需要使用變數替權換subs,才能得到數值矩陣...